Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Problem sa izvestajem i datumom

[es] :: Access :: Problem sa izvestajem i datumom

[ Pregleda: 2102 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

aleksa505

Član broj: 332684
Poruke: 3
*.cws.sco.cisco.com.



Profil

icon Problem sa izvestajem i datumom29.02.2016. u 16:35 - pre 99 meseci
Kreirala sam bazu podataka u Access-u koja bi trebala da zameni trenutno tabelarno (excel) vodjenje evidencije o izvrsenim operacijama.
Pre nego sto sam zapocela sa prebacivanjem podataka iz ove tabele, izvrsila sam proveru i sve je dobro radilo.
Sada nailazim na problem, da izvestaji daju samo podatke prenete iz Excel tabele a da se podaci koje sam npr. danas unela (29.02.2016)
kroz formu ove aplikacije ne prikazuju u izvestaju - Pranje za period.
Ukoliko uklonim Data Range, upit prikazuje zapis unet danas. Moze li neko da pomogne?

Hvala na pomoci.
Prikačeni fajlovi
 
Odgovor na temu

Getsbi

Moderator
Član broj: 124608
Poruke: 2831



+45 Profil

icon Re: Problem sa izvestajem i datumom29.02.2016. u 17:36 - pre 99 meseci
Pogledaće već neko, samo treba da zakačiš primer aplikacije sa nešto podataka. Vidi u FAQ meniju tačku 22. i kako se kači fajl uz poruku.
 
Odgovor na temu

aleksa505

Član broj: 332684
Poruke: 3
*.cws.sco.cisco.com.



Profil

icon Re: Problem sa izvestajem i datumom07.03.2016. u 07:14 - pre 98 meseci
Da li neko ima predlog sta bi mogao da bude uzrok ovom problemu pa mozda i sama da proverim.
Sve stavke sam nekoliko puta proverila ali ne vidim problem. U planu je bilo da se ovih dana pocne sa koriscenjem baze podataka.
Hvala na odgovorima.
 
Odgovor na temu

Zidar
Canada

Moderator
Član broj: 15387
Poruke: 3085
*.100.46-69.q9.net.



+79 Profil

icon Re: Problem sa izvestajem i datumom07.03.2016. u 16:05 - pre 98 meseci
Query koji pokusavas da otvoris ima dva parametra, koji citaju vrednost iz kolone [Pranje Alata].[Vreme otvaranja Naloga], koje je Date/Time tipa. Date/Time se interno cuva kao decimalni broj. Celi deo predstavlja datum, decimalni deo predstavlja sate, minute, sekunde. Dan pocinje u ponoc, 00:00 sati, a zavrsava u 23:59:59 sati. Vrednosti u koloni [Vreme otvaranja naloga] iz tvog primera su:
1/15/2015 10:20:00 PM
2/29/2016 7:06:55 PM

Izraz tipa "parameter Beetwen StartDate AND EndDate" je isto sto i "StartDate >= Parameter AND EndDate <= Parameter ". Ti hoces da vidis unose za EndDate = #2/29/2016#. Vrednsoti koje imas u koloni [Vreme otvaranja Naloga] za taj datum #2/29/2016# su sve vece od #2/29/2016#, jer imaju i decimalni deo. Resenja ima vise.

Prvo, mozes da ogranicis unos u [Vreme otvaranja Naloga] da budu samo celi brojevi - da se ne belezi decimalni deo. To postizes tako sto u VAlidation Rule za kolonu na nivou kolone upises izraz

[Vreme otvaranja Naloga] = int([Vreme otvaranja Naloga]).

Time garantujes da se vreme, sati, minurti, sekunde ne mogu pojaviti u toj koloni, cime tvoj problem nestaje. To je najbolje resenje.

Dresenje ja da u Criteri redu u kveriju upises

Between [Forms]![Report Date Range]![PocetniDatum] And ([Forms]![Report Date Range]![KrajnjiDatum]+1) ili
Between [Forms]![Report Date Range]![PocetniDatum] And int([Forms]![Report Date Range]![KrajnjiDatum]).

Drugo resenje je mozda na prvi pogled privlacnije - ima manje posla. Medjutim, vrlo je verovatno da ce vecina kvarija koe ces napisati sa slicnim uslovima imati isti problem, pa ces stalno morati da komplikujes kveri vise nego sto je neophodno.

Toliko o problemu i mogucim resenjima. Znacajno veci i vazniji problem sam fizicki dizajn baze. Logicki dizajn, deluje uglavnom OK, im propusta ali nije lose za pocetak; relationships izmedju tabela postavljene su logicno. Fizicki - ne valja sto si ama bas u svaku tabelu stavila autonumber ID koji je istovremeno i PK. Time si zamaglila stvarnu prirodu procesa koji tvoja baza pokusava da podrzi. Dobra vest je da mislim svuda imas prirodne kljuceve u tabelama, i propisno si ih oznacila kao UNIQUE.

Netrazeni savet je - izbaci sve one ID i IDxx iz svih tabela i povezi ih koristeci prirodne kljuceve. Time ces ukloniti jedan sloj nepotrebnih komlikacija. Trenutno, kad se otvore tabele, ne vide se stvarne vrednosti koje su ID tipa, nego prirodne vrednosti, koje su razumljivije, zahvaljujuci upotrebi Lookup Combo Box u dizajnu tabele. Na primer, u tabeli [Pranje alata], za kolonu [Broj Alata] vidim vrednosti '1059-10' i '1039-2', a u tabelise stvarno nalaze vrednosti, sto moze da dovede do velikih zabuna kasnije u procesu. Vidi ovu sliku. Donja deo slike je ono sto se stvarno nalazi u tabeli, a gornja slika pokazuje 'prevedene' vrednosti. lepo za gledanja, ali nocna mora za pisanje kverija.

:-)
Prikačeni fajlovi
 
Odgovor na temu

aleksa505

Član broj: 332684
Poruke: 3
*.cws.sco.cisco.com.



Profil

icon Re: Problem sa izvestajem i datumom14.03.2016. u 12:04 - pre 98 meseci
Zahvaljujem se Zidaru na savetima i pomoci.
Odlucila sam se za drugo resenje iz razloga sto sam htela da zadrzim decimalni deo polja Date/Time koji mi je neophodan za izvestaj o vremenkom pracenju naloga (Izvestaj pratimo kroz minute i sate).
Pokusala sam sa oba upita

Between [Forms]![Report Date Range]![PocetniDatum] And ([Forms]![Report Date Range]![KrajnjiDatum]+1) ili
Between [Forms]![Report Date Range]![PocetniDatum] And int([Forms]![Report Date Range]![KrajnjiDatum])

ali problem je sto upit u oba slucaja ne prikazuje zapise pravilno.

Npr. ukoliko imam zapise sa danasnjim danom (14.03.2016) a ja zelim da na kraju radnog dana vidim samo danasnje zapise, i ukoliko unesem Date Range od 14.03.2016 do 14.03.2016 upit nece dati nijedan zapis,
ali ukoliko danas unesem Date Range od 14.03.2016 do 15.03.2016. (sutrasnji datum) upit ce u tom slucaju prikazati sve izvestaje od danasnjeg dana.

Mislim da bi ovakav nacin "rangiranja" datuma uneo zabunu kod operatera pa sam pokusavala da resim problem ali mi ne polazi za rukom.
Pokusala sam i da nadjem bilo kakvo objasnjenje u knjigama i na internetu ali bas nicega nema....

I na kraju, pitala sam se kako bi trebao da izgleda upit za Formu Report Date Range koju bih prilagodila za unos pocetnog i krajnjeg datuma.

Ovako ne radi a ne znam kako je pravilno.

Private Sub Preview_Click()
If IsNull([PocetniDatum]) Or IsNull([KrajnjiDatum + 1]) Then
MsgBox "Morate uneti pocetni i krajnji datum"
DoCmd.GoToControl "PocetniDatum"
Else
If [PocetniDatum] > [KrajnjiDatum] Then
MsgBox "Krajnji datum mora biti veci od pocetnog"
DoCmd.GoToControl "PocetniDatum"
Else
Me.Visible = False
End If
End If
End Sub



 
Odgovor na temu

[es] :: Access :: Problem sa izvestajem i datumom

[ Pregleda: 2102 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.