Problemer med at udsøge data ved hjælp af dato
Hej eksperter.Jeg sidder og undrer mig BRAVT over Access 97.
Jeg har en form, hvor jeg viser nogle data, hvor jeg bl.a. afgrænser på et datofelt.
Jeg spørger på data, som har en dato <= dags dato + en visningshorisont (antal dage).
Jeg har lavet noget kode som konstruerer en ny sql-sætning til recordssourcen på min form (den udskifter simpelthen en dato i sql-udtrykket alt efter hvad jeg angiver i visningshorisont), og en knap, som genfrisker skærmen.
SQL-statementet ser nogenlunde sådan ud:
SELECT DISTINCTROW Saelger.SælgerKode, Kontaktlog.OpfølgendeSælger, Kontaktlog.AftaleDato, Kontaktlog.AftaltKontaktForm, Firma.FirmaNavn, Kontaktlog.Opfulgt, "Opfulgt" AS Udtryk1, KontaktPerson.Fornavn, KontaktPerson.Efternavn, KontaktPerson.Stillingsbetegnelse, Kontaktlog.KontaktlogId, Kontaktlog.Opfølgdato
FROM Saelger INNER JOIN (Firma INNER JOIN (KontaktPerson INNER JOIN Kontaktlog ON KontaktPerson.KontaktPersonNummer = Kontaktlog.KontaktPersonNummer) ON Firma.FirmaNummer = KontaktPerson.Firmanummer) ON Saelger.SælgerKode = Kontaktlog.OpfølgendeSælger
WHERE (((Kontaktlog.AftaleDato)<=#09-09-2004#) AND ((Kontaktlog.Opfulgt)=False) AND ((Saelger.UserId)=CurrentUser()));
Hvor det er strengen #09-09-2004# der bliver udskiftet, når jeg opdaterer min visningshorisont.
Kan nogen fortælle mig, hvorfor ACCESS 97 konsekvent NÆGTER at vise data, hvis datoen ligger mellem d. 1. og d. 8. (begge inkl.) i en måned.
F.eks. vises data fint ved:
SELECT DISTINCTROW Saelger.SælgerKode, Kontaktlog.OpfølgendeSælger, Kontaktlog.AftaleDato, Kontaktlog.AftaltKontaktForm, Firma.FirmaNavn, Kontaktlog.Opfulgt, "Opfulgt" AS Udtryk1, KontaktPerson.Fornavn, KontaktPerson.Efternavn, KontaktPerson.Stillingsbetegnelse, Kontaktlog.KontaktlogId, Kontaktlog.Opfølgdato
FROM Saelger INNER JOIN (Firma INNER JOIN (KontaktPerson INNER JOIN Kontaktlog ON KontaktPerson.KontaktPersonNummer = Kontaktlog.KontaktPersonNummer) ON Firma.FirmaNummer = KontaktPerson.Firmanummer) ON Saelger.SælgerKode = Kontaktlog.OpfølgendeSælger
WHERE (((Kontaktlog.AftaleDato)<=#09-09-2004#) AND ((Kontaktlog.Opfulgt)=False) AND ((Saelger.UserId)=CurrentUser()));
Men hvis datoen ændres til en dato mellem 01-09-2004 og 08-09-2004 (begge inkl.) så kommer der intent ud.
Og dataene har alle datoer der ligger i august !!!
Mystisk synes jeg.
