Stvar je sledeca, zapeo sam u kodu i nikako da nadjem resenje.
Dakle, ono sto pokusavam da napravim je sledece.
1. Korisnik iz tekstualnog polja u listu dodaje reči.
2. Kada doda sve reči koje mu trebaju, na osnovu te liste reči, u bazi podataka pretražuje određeno polje.
3. Sva polja, koja u svom stringu, na bilo kojoj poziciji sadrže reči koje je korisnik zadao, pojavljuju se u drugoj listi, sa jos nekim podacima.
Evo kako izgleda kod, nadam se da vam je jasno ovo gore..:
Option Explicit
Private Function PretraziTekstove() As Boolean
Dim Sql As String, boolFound As Boolean
If Len(cboVrstaTeksta.Text) = 0 Then 'mora biti izabrana kategorija
PretraziTekstove = False
cboVrstaTeksta.SetFocus
Exit Function
End If
'Brisanje starih
On Error Resume Next 'u slucaju da je prazno
With rsTemp.Recordset
.MoveFirst
Do While Not .EOF
.Delete
.MoveNext
Loop
End With
On Error GoTo errSelectTekst
Sql = "SELECT * FROM Tekst WHERE VrstaTeksta ="
Sql = Sql & Chr(34) & cboVrstaTeksta.Text & Chr(34)
Sql = Sql & " ORDER BY Name"
rsRecipe.RecordSource = Sql
rsRecipe.Refresh
With rsRecipe.Recordset
If Option1(0).Value = True Then 'Sve reci moraju biti ukljucene u pretragu
.MoveFirst
Do While Not .EOF
boolFound = True
For i = 0 To List2.ListCount - 1
If InStr(.Fields("GlavniTekst"), CStr(List2.List(List2.ListIndex))) > 0 Then
Else
boolFound = False
End If
Next
If boolFound Then
rsTemp.Recordset.AddNew
rsTemp.Recordset.Fields("Naziv") = .Fields("Naziv")
rsTemp.Recordset.Fields("GlavniTekst") = .Fields("GlavniTekst")
rsTemp.Recordset.Fields("PomocniTekst") = .Fields("PomocniTekst")
rsTemp.Recordset.Update
End If
.MoveNext
Loop
Else 'samo jedna rec mora biti ukljucena u pretragu
.MoveFirst
Do While Not .EOF
If InStr(.Fields("GlavniTekst"), CStr(Text1.Text)) > 0 Then
rsTemp.Recordset.AddNew
rsTemp.Recordset.Fields("Naziv") = .Fields("Naziv")
rsTemp.Recordset.Fields("GlavniTekst") = .Fields("GlavniTekst")
rsTemp.Recordset.Fields("PomocniTekst") = .Fields("PomocniTekst")
rsTemp.Recordset.Update
End If
.MoveNext
Loop
End If
End With
Sql = "SELECT * FROM Tekst ORDER BY Name"
rsTemp.RecordSource = Sql
rsTemp.Refresh
PretraziTekstove = True
Exit Function
errSelectTekst:
Err.Clear
PretraziTekstove = False
End Function
E, na kraju, moj problem lezi u tome sto kada selektujem drugu opciju "Smo jedna rec da bude ukljucena u pretragu", kod radi savrseno, ukucam rec i izlista mi sve tekstove koji sadrze tu rec, ali, kad odaberem vise reci, dodam ih u listu i izvrsim pretragu, izbaci mi sve i jedan tekst koji postoji u bazi podataka, bilo da sadrzi odredjene reci u listi, bilo da sadrzi samo jednu....
[Ovu poruku je menjao arpsoftt dana 01.07.2009. u 01:09 GMT+1]
Za ljubitelje humora: BlogWtf.Net