Novo

Forum kao aplikacija na telefonu

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

Vreme u DBGridu prikazuje kao 30.12.1899. a u Access-u je korektno

  • 2 odgovora
  • 4.106 pregleda

Najnovija ↓

Vreme u DBGridu prikazuje kao 30.12.1899. a u Access-u je korektno 23.04.2008. u 12:14 · pre 225 meseci #1
Radim u Delphi-u sa Access-om i imam mali problem sa prikazivanjem u DBGridu polja Vreme. Tu mi prikazuje 30.12.1899. dok u samom Acces-u normalno prikazuje 8:00 ili slicno vreme. Vreme biram pomocu TimePicker-a. Imam sledece naredbe.

x:=TimeToStr(VremePiker.Time);
ADOZakazivanja.FieldByName('vreme').Value:=StrToTime(x);

A ako bih pisao direktno
ADOZakazivanja.FieldByName('vreme').Value:=VremePiker.Time;

u Access ce mi upisati i datum vreme, a onda u DBGridu vidim samo datum.
Kako ovo mogu da resim? Pretrazivao sam forum i help i nalazio nesto oko dekodiranja datuma i formatiranja, ali nisam uspevao.

Problem je samo da DBGrid ispravno procita vreme iz Access-a!
Re: Vreme u DBGridu prikazuje kao 30.12.1899. a u Access-u je korektno 23.04.2008. u 16:10 · pre 225 meseci #2
> Radim u Delphi-u sa Access-om i imam mali problem sa prikazivanjem u DBGridu polja Vreme. Tu mi prikazuje 30.12.1899. dok u samom
> Acces-u normalno prikazuje 8:00 ili slicno vreme. Vreme biram pomocu TimePicker-a. Imam sledece naredbe.

30.12.1899 je nulti datum za Delphi, što verovatno znači da je u bazi polje za taj red NULL.

> x:=TimeToStr(VremePiker.Time);
> ADOZakazivanja.FieldByName('vreme').Value:=StrToTime(x);

Ako koristiš .Value nema potrebe da posebno konvertuješ u string, datum ili nešto treće, pošto je to Variant dovoljno je samo dodeliti vrednost.
Preporučujem dodelu prema konkretnom tipu (AsInteger, AsString, AsDateTime...). Npr. ADOZakazivanja.FieldByName('vreme').AsDateTime := Now;

> ADOZakazivanja.FieldByName('vreme').Value:=VremePiker.Time;
> u Access ce mi upisati i datum vreme, a onda u DBGridu vidim samo datum.

Najpre da li tebi treba datum, vreme ili timestamp (datum i vreme), prema tome trebaš da odabereš odgovarajući tip polja u bazi.
Ako je u pitanju TIME, način ispisa najlakše da podesiš preko DisplayFormat od TFielda koji je povezan sa tim poljem. Npr. 'HH:MM:SS'.
Potpis
Do not be a help vampire (http://slash7.com/pages/vampires), use the google.

How to ask questions the smart way:
http://www.catb.org/~esr/faqs/smart-questions.html
http://solair.eunet.rs/~fangor...stions/smart-questions.sr.html
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme