[ srdja @ 27.01.2002. 20:49 ] @
Imam jednu tabelu Paradox 7 uradjenu u DataBase desktop-u koja izmedju ostalog ima dva polja koja mi predstavljaju veliki problem:
-U jedno polje treba da bude upisan sledeci zapis
"01/2002" (da pojasnim ovaj zapis - "01" treba da predstavlja nesto kao AutoIncrement zanci za svaki novi zapis da se uveca za jedan "02"...."03', zatim ide kosa crta"/" pa onda sledi "2002" , e ova brojka treba da predstavlja trenutnu godinu. Ovaj zapis bi trebao da se sastoji iz ova tri dela znaci >> broj trenutnog zapisa u tabeli, pa kosa crta, pa trenutna godina. Da li ovaj problem resavam direktno u mojoj aplikaciji ili je problem resiv u DB-u?
-U drugo polje stoji datum. Medjutim kada se podesi polje (konkretno u ovoj tabeli "datum") na "date" datum je sledeceg formata npr. 1/24/2002. Znaci moje pitanje je kako da promenim format datuma da bude NORMALAN.

[ overflow @ 27.01.2002. 23:30 ] @
Citat:
srdja:
Imam jednu tabelu Paradox 7 uradjenu u DataBase desktop-u koja izmedju ostalog ima dva polja koja mi predstavljaju veliki problem:
-U jedno polje treba da bude upisan sledeci zapis
"01/2002" (da pojasnim ovaj zapis - "01" treba da predstavlja nesto kao AutoIncrement zanci za svaki novi zapis da se uveca za jedan "02"...."03', zatim ide kosa crta"/" pa onda sledi "2002" , e ova brojka treba da predstavlja trenutnu godinu. Ovaj zapis bi trebao da se sastoji iz ova tri dela znaci >> broj trenutnog zapisa u tabeli, pa kosa crta, pa trenutna godina. Da li ovaj problem resavam direktno u mojoj aplikaciji ili je problem resiv u DB-u?
-U drugo polje stoji datum. Medjutim kada se podesi polje (konkretno u ovoj tabeli "datum") na "date" datum je sledeceg formata npr. 1/24/2002. Znaci moje pitanje je kako da promenim format datuma da bude NORMALAN.



Za prvi problem ... postoje dva resenja ... prvo: formiraj skriveno (za korisnika) autoinc polje, pri ubacivanju novog sloga konvertuj to polje u string i spoji sa '/2002' (naravno prvo ispitaj koja je godina); drugo: pre ubacivanja poslednjeg sloga, prebroj koliko si ih do sada ubacio u bazu (citaj: tabelu) i na taj broj dodaj jedan ... potom taj broj konvertuj u string i spoji opet sa '/2002'.

Drugi problem - probaj da promenis settings-e za vreme i datum u 'Regional settings-ima' (mislim da bi trebalo da radi) ... ako ne ... opet kreiraj polje tipa string (u tabeli) u koje ces upisivati direktno iz programa "svojerucno" kreiran oblik datuma.
[ srdja @ 29.01.2002. 10:09 ] @
Kreirao sam skriveno autoinc polje, medjutim kada ja kazem insert da ubacim novi zapis meni se to polje ne azurira trenutno vec tek kada kazem post tek onda mi se upise redni broj.
Problem je i u sledecem: Dok sam pravio tabelu u Db-u, potom sam sam popunio nekolio polja direktno iz njega polje AutoInc mi ne pocinje redom 1,2,3,4... vec nesto sasvim drugo npr. 310, 320, ... Izbrisao sam sve podatke iz tabele pa opet ponovo ali nece. U cemu je problem?
-I jos samo da naglasim polje AutInc kreira redni broj zapisa u formatu 1,2,3,4,....10,11... a meni je potrebno da bude sledece 01, 02, 03 pa sve tako do 9, pa onda normalno 11, 12, 13, 14....
Nakoji nacin to da izvedem?
[ overflow @ 29.01.2002. 19:04 ] @
Nije bitno ... kreiraj ipak jedno integer (longint) polje i jedno string (text) polje. Pre ubacivanja novog podatka prebroj koliko do sada podataka ima u tabeli. Prekonvertuj taj broj u neku karakternu (string) promenljivu, naravno pre konvertovanja ispitaj da li je taj broj manji od 10, ako jeste stringu dodaj posle konvertovanja jos jednu nulu ispred - dakle, s:='0'+s;
Posle ovoga spoj taj tvoj string (s) sa '/2002' i takav podatak upisi u ono string (text) polje i prikazi ga korisniku.

Primer:

br integer
redbr string
artikal string
tezina string

----------------------
br redbr artikal tezina
1 01/2002 Puska 10 kg
2 02/2002 Slem 2 Kg

Ako treba da upisemo "Crep 5 kg" ...

Prebrojimo koliko imamo polja u tabeli (2) ili odemo do poslednjeg sloga i iscitamo vrednost polja 'br' u neku promenljivu (2). Tu vrednost prekonvertujemo u neku privremenu promenljivu (string) dodavajuci joj '0' ako je broj manji od 10. I dodamo joj '/2002' (03/2002). Tako formiranu promenljivu upisujemo u tabelu zajedno sa ostalim podacima (ukljucujuci i stvarni broj tog sloga - dakle 3 u nasem slucaju).

----------------------
br redbr artikal tezina
1 01/2002 Puska 10 kg
2 02/2002 Slem 2 Kg
3 03/2002 Crep 5 kg


" Easy that easier can't be ... "