Avatar billede kimsand Nybegynder
08. maj 2014 - 12:32 Der er 9 kommentarer og
1 løsning

Er det her overhovedet muligt.

Jeg leder efter alle de mandage indenfor en periode hvor en medarbejder er allokeret i det angivne klokkeslæt.

Kan jeg skrive AND Day([DT_tilbudskalender].[dato]= '" & monday  ..... i min Query. ?

......

sCrit = "[DT_tilbudskalender].[IDmedarbejder] = " & medarbejderid & " AND [DT_tilbudskalender].[dato] <= #" & startdato & "# AND [DT_tilbudskalender].[dato] >= #" & slutdato & "# AND Day([DT_tilbudskalender].[dato]) = '" & "mandag" & "' AND [DT_tilbudskalender].[starttid] <= #" & testtid & "# AND [DT_tilbudskalender].[sluttid] >= #" & testtid & "#"
       

If DCount("*", "DT_tilbudskalender", sCrit) > 0 Then ' underviseren er allerede allokeret

.....
Avatar billede kimsand Nybegynder
08. maj 2014 - 13:07 #1
Den skulle selvfølgelig se sådan ud....

sCrit = "[DT_tilbudskalender].[IDmedarbejder] = " & medarbejderid & " AND [DT_tilbudskalender].[dato] <= #" & startdato & "# AND [DT_tilbudskalender].[dato] >= #" & slutdato & "# AND WeekDay([DT_tilbudskalender].[dato],2) = 1 AND [DT_tilbudskalender].[starttid] <= #" & testtid & "# AND [DT_tilbudskalender].[sluttid] >= #" & testtid & "#"
Avatar billede MSchlamovitz Mester
08. maj 2014 - 13:24 #2
Det ser rigtigt ud. Virker det?
Avatar billede kimsand Nybegynder
08. maj 2014 - 13:59 #3
nix, returnerer 0, men det burde det.

Så prøver jeg at lave en forespørgsel der gør det samme for at kigge på SQL generatoren, men jeg kan ikke i Felt rækken, skrive

dag: Weekday([dato],2)

og så i kriterie skrive 1.

Det burde virke har et konkret Google eksempel der er præcis sådan, men den skriver at det indtastede udtryk indeholder ugyldig syntaks.
Avatar billede kimsand Nybegynder
08. maj 2014 - 14:02 #4
Den eneste ændring fra denne sql og den sidste du kiggede på er følgende.

AND WeekDay([DT_tilbudskalender].[dato],2) = 1

så den skulle returnere alle mandage som overholder de øvrige kriterier, altså den rette IDmedarbejder, dato der ligger mellem 2 datoer og 1 klokkeslæt.
Avatar billede kimsand Nybegynder
08. maj 2014 - 14:05 #5
kan det være fordi at weekday skal have en seriel, eller dato i " " men jeg leverer det i den type den er defineret i DB som er date type ?
Avatar billede kimsand Nybegynder
08. maj 2014 - 14:06 #6
og hvordan døvlen laver jeg den så om....
Avatar billede kimsand Nybegynder
08. maj 2014 - 14:12 #7
Prøvede med WeekDay(int([DT_tilbudskalender].[dato]),2) = 1

Det virkede ikke.
Avatar billede kimsand Nybegynder
08. maj 2014 - 14:21 #8
weekday(cdate([DT_tilbudskalender]).[dato],2) = 1 virkede heller ikke.
Avatar billede kimsand Nybegynder
08. maj 2014 - 14:38 #9
ok prøvede testede en anden dcount som kun talte på dagen, og ikke havde andre kriterier, og der virker syntaksen

WeekDay([DT_tilbudskalender].[dato],2) = 5

Der returneres det rigtige antal af mandag, tirsdag, onsdag, torsdag og fredage fra 1-5.

dvs. der er noget galt med mine andre kriterier. De virkede bare lige før da du hjalp mig med syntaksen.

Hmm investigating.......
Avatar billede kimsand Nybegynder
09. maj 2014 - 10:52 #10
Meget mærkeligt...

Nu virker det, jeg har ingen forklaring på hvorfor det ikke virkede til at starte med.

Hvis der er andre der har problem med dette og kommer forbi, kan jeg sige at den syntaks jeg havde i starten virker.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester