Rapport draaien op datum

Status
Niet open voor verdere reacties.

gast0451

Gebruiker
Lid geworden
6 nov 2011
Berichten
12
Hallo allemaal.
Ik heb een database gemaakt waarin een rij met nummers staan en een begin- en einddatum (en nog wat andere zaken die niet belangrijk zijn voor mijn vraag).
nr. A1b, begindatum 01-01-2008, einddatum 18-11-2010
nr. A2a, begindatum 13-07-2007, einddatum 25-09-2013
enz. enz.
Graag wil ik een rapport draaien waar wordt 'gekeken' naar de einddatum maar dan wel zodanig dat het rapport alleen de regels weergeeft die voldoen aan de criteria 'einddatum minus 30 dagen'.
M.a.w. als de einddatum bijv. vandaag is (20-12-2012) dan moet het rapport alleen de regels weergeven die 30 dagen eerder liggen dan vandaag.
Dit is een controlerapportage, zodat ik kan zien wanneer desbetreffende regel gaat verlopen en dus kan zien dat 30 dagen later de regel vervalt.
Iemand een idee hoe ik deze criteria in de query moet invoeren.
Andere ideeen / oplossingen zijn ook welkom hoor.
Heb van alles geprobeerd, maar kom er niet uit.
Alvast bedankt voor jullie aandacht en mogelijke hulp en een fijne feestdagen!
m.vr.gr.
 
Laatst bewerkt door een moderator:
Je kunt een criterium maken op het veld [Einddatum]:
Code:
<DateAdd("d";-30;Date())
 
Laatst bewerkt:
Dank voor je snelle reactie, maar wat bedoelt u met code?
Ik heb <DateAdd("d";-30;Date()) ingevoerd onder veld 'EINDDATUM' (in de query), maar dat werkt niet.
Ik heb een plaatje toegevoegd.Criteria.jpg
m.vr.gr.
Luke
 
Ik was in de code een opmaaktag vergeten. Is aangepast, dus niet zie je de code zoals het zou moeten. De code heb je goed ingevoerd, tenzij je de komma als scheidingsteken gebruikt en niet de puntkomma. Maar dan krijg je al een foutmelding bij het plakken van de code, dus dat zal wel niet.
Dan is er maar één verklaring: je datumveld is geen datumveld, maar een tekstveld. Dus de tegenvraag: is dat zo?
 
Dank u wederom.
Nee, het zijn geen tekstvelden, maar wel degelijk een datumvelden (BEGIN en EINDDATUM).
 
Dan zou het filter moeten werken; ik heb 'm net getest en bij mij doet ie het prima. Je geeft overigens de meest onhandige 'toelichting' die er op deze planeet bestaat ('hij doet het niet'). Daar kan ik uiteraard niks mee.... Dus graag wat beter uitleggen wàt er dan niet gebeurt :)
 
Ik zal trachten e.e.a duidelijker te omschrijven.
Ik heb een tabel met de naam nr.
Daarin staat een veld nr. een veld begindatum en een veld einddatum (en uiteraard een id veld)
Als ik een rapport draai dan moeten daar alleen de regels op komen te staan met datums die 30 dagen (of langer) geleden voor 'einddatum' liggen.
Vandaag is 20-12-2012.
Einddatum bijvoorbeeld 31-12-2012
Een regel waar dus bij einddatum 15-12-2012 staat, zou dus moeten worden weergegeven.
Een einddatum 02-02-2013 dus niet.
Die ligt niet binnen de marge van 30 dagen.
Een einddatum die voor vandaag ligt is (nog) niet van toepassing.
Zoals het nu is, en ik maak een rapport, dan worden gewoon alle regels weergegeven.
Dat bedoelde ik met 'maar dat werkt niet'.
Excuses voor de uitleg. :-(
 
Dat legt het niet veel beter uit, maar ik kom er wel achter dat ik het iets anders heb geïnterpreteerd. Je moet in je query een extra veld maken, waarin je de filterdatum berekent. Die berekening ziet er zo uit:
Code:
Filterdatum:DateAdd("d";-30;[Einddatum])
Hier zet je het criterium op:
Code:
<Date()
 
Laatst bewerkt:
Ik stel het erg op prijs dat je me helpt.
(waarschijnlijk kan ik me beter bij Excel houden) :-(

Ik heb er plaatjes bij gedaan en heb het ingevoerd zoals ik denk dat je bedoeld.
Maar dan worden nog steeds alle data weergegeven.
(ik zal het wel fout doen)

Nummer.jpgTabel.jpg
 
Typfouten... :evil:
Code:
Filterdatum:DateAdd("d";-30;[Einddatum])
 
Geen idee hoe dat (typfouten) is gekomen. :-(
Had het gekopieerd en geplakt.
Heb het aangepast en inderdaad wordt er een tabel ingevuld, maar met datums die je niet zou verwachten. nl. 2010 en 2011.
Maar dit is (ook) niet de (mijn) bedoeling.
Ik zal er nog even over nadenken.
Ik kom er nog op terug.
Alvast bedankt.
m.vr.gr.
Luke
 
Je vraag was simpel: alle datums die ouder zijn dan Einddatum - 30. En daar valt 2011 natuurlijk ook onder. Je hebt een extra criterium nodig. Welke? Dat mag jij bepalen :)
 
Hallo,

Uhhh, nee.

Ik wil alleen die regels in het rapport waarvan de datum (max) 30 dagen eerder ligt dan die van de einddatum.
De truc was in dit geval 'between NOW() and NOW()-30'
Kan misschien makkelijker of anders, maar dit werkt goed genoeg.
Ik stoei even verder met andere criteria.
Ben al een heel eind gekomen.
Dit was mijn eerste vraag op dit forum en moe(s)t nog even wennen.
Zeker hoe het zo duidelijk mogelijk op zien te schrijven.
Hoe dan ook.
In ieder geval bedankt voor het wijzen in de goede richting!
Heb er zeker wat aan gehad!

Bedankt!

m.vr.gr.
 
Laatst bewerkt door een moderator:
Als je verder geen tijdnotatie in je datum hebt, kun je beter Date() gebruiken, maar dat is verder een kleinigheid.
Maar een vraag goed omschrijven, dat is een heel andere kunst ;)
Kan deze denk ik op <Opgelost>.
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan