Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 12 odgovora
  • 7.353 pregleda

Najnovija ↓

Filtriranje baze - datum? 09.12.2003. u 23:43 · pre 278 meseci #1
Koristim ovako nesto za filtriranje baze:
ClientDataSet1.Filter := DATUM+'='''+Edit1.text+'*'''
Ovaj kod radi savrseno kada su tekstovi u pitanju.
Ali se javlja problem za datum, npr nemogu nikako podatke da filtriram po mesecu, kao ni po godini(dd.mm.gggg), dok po danu radi savrseno.
Probavao sam da stavljem i * i # ... ispred i u samom codu ali nije vredelo onda filtar nista nebi pokazivao.
Kako bi se to moglo resiti?
Pozdrav!!!
GYGY
Potpis
GYGY
Re: Filtriranje baze - datum? 23.12.2003. u 23:10 · pre 278 meseci #3
Pa ... pretpostavljam da ti je polje u bazi koje sadrzi datum formatirano kao polje za data-time a to nije text zato bi sadrzaj polja Edit1.text morao da konvertujes u
datatime pa tek onda da ga ubacis u filter
Re: Filtriranje baze - datum? 26.12.2003. u 00:23 · pre 278 meseci #4
Nije formatirano kao datum vec kao string. Kada je kao datum onda su stalno neke greske pa sam prebacio u string (xx.xx.xxxx, mada sam stavio masku pri unosu).
I nemogu nikako resiti to filtriranje npr za godinu da napocetku xx.xx.2000, da izlista sve podatke iz 2000 god. Na koji nacin?
Pozdrav!!!
Potpis
GYGY
Re: Filtriranje baze - datum? 26.12.2003. u 03:06 · pre 278 meseci #5
Najjjednostavnije ti je da napravis DataSet preko SQLa

na primer
Code:

SELECT * FROM Table1 WHERE DatePart("m", DatumPolje) = " +DateTime1.Date+" AND.... i tako dalje.

Re: Filtriranje baze - datum? 04.01.2004. u 03:14 · pre 277 meseci #6
Da li moze da se uradi da filtrira na primer po cetvrtom i petom stringu (xx.01.xxxx i izlista sve u mesecu januaru)?
Unapred hvala
GYGY
Potpis
GYGY
Re: Filtriranje baze - datum? 04.01.2004. u 05:46 · pre 277 meseci #7
ne kapiram kako neko može da bude toliko lenj da i posle par nedelja ne može da reši ovaj problem.

imaš komponentu tClientDataSet, ona ima property Filter

klikneš na komponentu na formi, klikneš na Filter property, i pretisneš F1

pročitaš blago informativni text, klikneš na link "Limiting what records appear", i ako na toj stranici ne nađeš sve šta ti treba, onda ne znam šta tražiš uopšte u programiranju...

da li može lakše od toga?
Potpis
blogče :: unescaped beta
  »
go-paste extenzija
  »
reč dana: backup
  »
bočne koalicije
Re: Filtriranje baze - datum? 05.01.2004. u 20:30 · pre 277 meseci #8
Da bi filtrirao bazu po datumu ili vremenu koristeci opciju Filter, samo je potrebna jedna mnogo prosta stvar, a to je da pogledas u regional settings, koji ti je format datuma ili vremena i tako ga postavis u filter.

Drugi nacin ti je mnogo jednostavniji, i ne zavisi od Regional Settingsa, a to je da na pocetku svoje aplikacije inicijalizujes globalnu promenljivu koja je sastavni deo svakog programa i deklarisana je u SysUtils i to je:

ShortDateFormat := 'dd-mm-yyyy';
ili kako vec zelis da ti bude formatiran datum>
Evo primera
Na pocetku aplikacije stavis:
ShortDateFormat := 'dd-mm-yyyy';

A onda u kodu:
ClientDataSet := 'Datum = 31-12-2004'



Ako koristis, promenljivu za datum, npr
var
MyDate : TDate;


onda bi kod bio
ClientDataSet := 'Datum = ' + DateToStr(MyDate)


Zapamti kada globalnu promenljuvu inicijalizujes na pocetku aplikacije, tokom cele aplikacije sve radi pod tim formatom.


Uz najbolje zelje
Milan

Pozdrav
Re: Filtriranje baze - datum? 12.01.2004. u 10:23 · pre 277 meseci #9
Probaj ovako:
TableX.filter:='imepolja='+QuoteStr((tvoj string za datum)+'*');

Pogledaj u Helpu koji je UNIT potreban za naredbu QuoteStr

Pozdrav.
Potpis
Sto puta sam ti SRPSKI rekao:
ono što jednom crack-uješ,
ne možeš više da patch-uješ!
Re: Filtriranje baze - datum? 12.01.2004. u 17:42 · pre 277 meseci #10
Citat:
gygy:
Da li moze da se uradi da filtrira na primer po cetvrtom i petom stringu (xx.01.xxxx i izlista sve u mesecu januaru)?
Unapred hvala
GYGY


Sta fali mom resenju?
Re: Filtriranje baze - datum? 13.01.2004. u 02:09 · pre 277 meseci #11
byTer ne znam, verovatno nista samo sto nisam radio nikako sa sql-om. Neznam ni kako funkcionise jedino da mi na e-mail posaljes neke osnovne funkcije. Hvala ti na trudu u svakom slucaju!!!
chips videcu za to!
Hvala u svakom slucaju!!!
GYGY
Potpis
GYGY
Re: Filtriranje baze - datum? 13.01.2004. u 17:50 · pre 277 meseci #12
Pa ukoliko ti je vec napravljena komponenta TQuery (valjda bese) onda samo promenis svijstvo SQL ovako

Code:

myQuery.SQL.Clear;
myQuery.SQL.Add('select ***')
myQuery.Requery()

//ovde mozes alternativno da uneses i 
myquery.Close /ili .Active:=False; na pocetku
i
myquery.Close /ili .Active:=True; na kraju.


Asto se tice ovog filtera cini mi se da sluzi za filtriranje vec dobivenih rezultata Querija
Re: Filtriranje baze - datum? 29.01.2004. u 15:06 · pre 277 meseci #13
Mozes da koristis SetRange,iliti pretragu od-do odredjenog datuma.

Table1.IndexName := 'bydatum' ;
Table1.SetRange([MaskEdit1.Text],[MaskEdit2.Text]);
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme