[ MatezYU @ 25.03.2006. 05:58 ] @
Dakle ovako, radim izvestaj i u izvestaju postoje gomile opcija za filtriranje...
Dakle na jednom mestu unesem datum i posle toga biram da li zelim da vidim pacijente kod jednog lekara, kod drugog lekara ili nesto trece. Tih filtera ima 6 komada ukupno... Ovako sam poceo da radim i ono prvo mi je ok, tj. po datumu dobro sortira ali kada treba da se izabere korisnik ili vrsta pregleda nece... U cemu gresim?
I kako mogu da odradim da kada unesem neki nepostojeci datum, recimo 31.02 ili tako nesto da mi ne pukne program nego da izbaci poruku o gresci da ne postoji takav datum?
Hvala


query1.sql.Clear;
query1.SQL.Add('SELECT pacijenti.*, nalazi.* FROM nalazi LEFT JOIN pacijenti ON nalazi.JMBG = pacijenti.JMBG WHERE (Datum BETWEEN' + QuotedStr(maskEdit1.Text) + ' AND ' + QuotedStr(maskedit2.Text) + ')');

if combobox1.ItemIndex=0 then
begin
end else query1.SQL.add(' AND (nalazi.Vrsta LIKE "'+combobox1.Text+'")');

if combobox2.ItemIndex=0 then
begin
end else query1.SQL.add(' AND (nalazi.Korisnik LIKE "'+combobox1.Text+'")');
[ Milos D @ 25.03.2006. 10:40 ] @
Koristi TDateTimePicker da ne moras da brines o ispravnosti datuma.

Za poslednji SQL uslov koristis combobox1.Text umesto combobox2.Text
[ sasas @ 25.03.2006. 10:44 ] @
Pokušaj

Code:

query1.SQL.add(' AND (nalazi.Vrsta LIKE "'+combobox1.Text+'")');


zameniti sa

Code:

query1.SQL.add(' AND (nalazi.Vrsta = '''+combobox1.Text+''')');


tj.

Code:

query1.SQL.add(' AND (nalazi.Vrsta = '+ QuotedStr(combobox1.Text) +')');


Obrati pažnju na navodnike (single quotes vs double quotes).

ss.