Rapport selecteren op datum + termijn

Status
Niet open voor verdere reacties.

jlebbink

Gebruiker
Lid geworden
15 feb 2010
Berichten
106
Ik wil een rapport maken met een selectie:

(Laatstekeurings datum + Interval) <= Huidige datum

Hiervoor heb ik de volgende expressie in een query geplaatst:

Expr1: DateAdd("m";[Interval];[Laatstekeuring])<=Date()

Ik krijg dan de volgende foutmelding "Gegevenstypen komen niet overeen in criterium expressie"

Hoe los ik dit op?

Bijgevoegd een opzetje van de database
 

Bijlagen

  • Tools.rar
    29,8 KB · Weergaven: 15
In je DateAdd kun je sowieso nooit zo'n vergelijking zetten; dat is hooguit een criterium dat je maakt. Dat overigens ook niet werkt. Dus je formule moet dan zijn:
Code:
Keuren?: IIf(DateAdd("m";[Interval];[Laatstekeuring])<Date();Waar;Onwaar)
En dan filter je op <>Onwaar.

Maar ook deze variant kun je niet rechtstreeks filteren op Waar of Onwaar. En dat heeft een simpele reden: je veld Interval is niet overal gevuld. En daardoor krijg je een foutmelding in het veld, en dat levert dan altijd een probleem op met wat je dan ook wilt filteren, want de uitkomst waarop je wilt filteren (Waar, Onwaar) is niet altijd te vinden in de kolom, waar dus ook foutmeldingen in staan. Vandaar de boodschap: "Gegevenstypen komen niet overeen in criterium expressie". Je moet er dus in ieder geval voor zorgen dat je óf het veld correct vult, of een leeg veld afvangt. Bijvoorbeeld zo:

Code:
Keuren?: IIf(DateAdd("m";IIf([Interval] Is Null;36;[Interval]);[Laatstekeuring])<Date();Ja;Nee)
Nu kun je wél op <>Onwaar filteren, want nu staat er altijd Waar of Onwaar in het veld. Uiteraard weet ik niet wat een standaard interval kan zijn, dus ik heb daar voor het gemak 36 ingevuld.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan