[ gygy @ 30.11.2003. 21:46 ] @
Kako kad kliknem na Button1 da u DBEdit1 automatski upise redni broj.
Tj situacija je ovakva imam neku bazu proba.cds (ClientDataSet1 i DataSource1: za povezivanje baze) i zelim kada kliknem na button1 (koji ujedno dodaje zapis u bazu) da automatski upise u dbedit1 redni broj, ali jos zelim da taj broj bude petocifren ili sestocifren (000001, 000002, 000003 ...)!
Kako bi to najjednostavnije moglo da se uradi?
Unapred hvala!
GYGY
[ byTer @ 01.12.2003. 00:29 ] @
Polje koje bi izgledalo ovako ne postoji kao broj u programiranju, bar ne kao standardni tip. Inace kako god da resis ovaj problem, morao bi da ovo polje konvertujes kao string pa ako ti treba kao broj nece biti problema da manipulises njime.

Znaci polje u tabeli bi trebalo da ti bude string. :(
[ Vic @ 01.12.2003. 08:11 ] @
Mozes pokusati sa maskom 0000#
[ gygy @ 01.12.2003. 21:28 ] @
Ja sad koristim ovaj kod za dobijanje rednog broja:
Code:
procedure TForm7.Button1Click(Sender: TObject);
 var
  A, C: REAL;
begin
DbEdit2.SetFocus;
Form1.ClientDataSet2.Last;
Label8.Caption := Form1.ClientDataSet2.ActiveBuffer;
Form1.ClientDataSet2.Insert;
  A := StrToFloat (Label8.Caption);
  if (A <> 0) then
  begin
  C := A + 1;
  DBEdit1.Text := FloatToStr (C);
  end
  else
  begin
  DBEdit1.Text := '1'
  end;
end;
sortiranje je po prvoj koloni kao i redni brojevi (ali je inace i problem u sortiranju (1,10,11,13,14,15,16,17,18,19,2,20,21,3,4,5,6,7,8,9)) i kod sasvim lepo radi do 10 zapisa ali onda stalno upisuje broj 10, bas zbog sortiranja. Inace zapisi u bazi su svi string, nema ni date, number...
Pa mislim kad bih pisao brojeve sa pet ili sest cifara da nebi bilo ovog problema!!!
Ili ako ima neki drugi kod?
Unapred hvala!
GYGY
[ StevanD @ 02.12.2003. 16:41 ] @
ne znam da li ti moze pomoci ovo....
x:integer;
y:string;

y:=inttostr(x);
y:=Copy('000000',1,6-length(y));

i dobijes vodece nule ispred vrednosti y ;)
[ gygy @ 02.12.2003. 21:59 ] @
Hvala ti covece!!!
Code:
x:integer;
y:string;

y:=inttostr(x);
y:=Copy('000000',1,6-length(y));
radi fenomenalno, uz par ispravki
Jos jedno pitanjce. Kako da kada mi je baza prazna tj. kad je '_'(prazno polje), onda mi program blokira, nemogu da stavim da je A, C: REAL, jer '_'(prazno polje), nije real (pogledati predhodni kod (A,C: REAL)).
Kako to mogu da sredim?
Hvala!!!
GYGY
[ StevanD @ 03.12.2003. 07:31 ] @
pa ne znam....
kako ti blokira sa kojom greskom pukne?
nije mi bas ni pitanje najjasnije :/
polje ima verovatno vrednost null
pogledaj tu nesto....
ili onako seljaka stavi da to polje u bazi po defaultu bude 0 ili nesto
[ gygy @ 03.12.2003. 12:10 ] @
greska je:
Debugger Exception Notification
Project Project2.exe raised exception class EConvertError with messages ''' is not a valid floating point value'. Proces stopped. Use Step or Run to continue.

Ni meni nije jasno , ali... da li negde mogu u kodu i kako da stavim da je prazno polje(string) = 0?
Mada to da stavim po seljaka vrednost 0 nije lose, samo mislim da to i nije bas neko resenje jer ako stavim da je vrednost 0 onda kad dodajem zapis taj sa nulom ce ostati kao prvi, ali meni to nije potrebno!
Hvala!!!
GYGY
[ -zombie- @ 03.12.2003. 18:24 ] @
StrToFloatDef(str, 0);

[ gygy @ 03.12.2003. 22:03 ] @
StrToFloatDef(str, 0);
-zombie- sta sa ovim, za sta je ovo? gde to da upisem?
Unapred hvala!!!
GYGY