[ inherited @ 14.02.2007. 17:59 ] @
Interesuje me, kako profesionalno odraditi sledece:
Nakon unosa broja tekuceg racuna, npr., ukoliko takav ne postoji ili nije po nekom osnovu aktivan, oznaka za neaktivnost je npr. 0, spreciti dalji unos podataka (uz odgovarajucu poruku), u suprotnom ispisati podatke vezane za taj tekuci racun.

Polazim od if petlje posle pretrage, tipa:
Code:

if ADOQuery.RecordCount = 0 then 
 ShowMessage('Neki text!')
else
 if ADOQuery.FieldByName('status').AsInteger = 0 then
  ShowMessage('Neki text!')


???
[ savkic @ 14.02.2007. 21:16 ] @
> Nakon unosa broja tekuceg racuna, npr., ukoliko takav ne postoji ili nije po nekom osnovu aktivan, oznaka za neaktivnost je npr. 0, spreciti dalji
> unos podataka (uz odgovarajucu poruku), u suprotnom ispisati podatke vezane za taj tekuci racun.

Code:

if Greska then
  raise Exception.Create('Greska')
else
  Caption := 'Sve je u redu';

[ Miloš Baić @ 14.02.2007. 23:38 ] @
Nije loše koristiti try - except blok:
Code:

...
try
//neka obrada (filter podataka)
except
 on e: Exception do
 MessageDlg(e.Message, mtError, [mbOK], 0);
end;//end except
...

Naravno, ovo iza except može biti neka tvoja poruka.
[ bondja @ 15.02.2007. 07:54 ] @
Malo je nezgodno kada se pojavi message box, ili nesto slicno kao poruka korisniku, zato sto tada korisnik
MORA da klikne na ono OK dugme itd... Bolje je napisati ispod edit konotrole u koju unosi podatke,
neki tekst (labela) i obojiti tu edit kontrolu (npr crveno). Moze na bilo koji drugi nacin da se oboji/obelezi
prozor, labela, caption, da uneta vrednost nije validna. Dakle izbegavati showmessage dialoge itd.

BTW: Ne postoji "profesionalan" kod koji to resava. Bilo kakav kod koji napises je sasvim ok, ako je
korisnik zadovoljan (podrazumeva se da SVE radi bez greske :)

poz.
[ inherited @ 15.02.2007. 10:15 ] @
Hvala vam na odgovorima.
Iskombinovacu try ... except blok, sa porukom o gresci u nekoj labeli ili slicno.