Oké, ik heb een database waar onze tijdlijsten in bij worden gehouden. Deze data wordt opgeslagen in de tabel Tijdlijst en daar heb ik twee kolommen met Jaar en Week.
Week wordt dus gevuld met het weeknummer en het Jaar met het jaar (duh!).
Nu heb ik een rapport gemaakt om te kunnen kijken over een bepaalde periode om te kijken hoeveel uur er op een bepaald ordernummer is geschreven. Ik heb daar een hele lange query van gemaakt, ik hoop dat jullie hem snappen?
Nu als de functie GebruikVanTot wordt gebruikt dan gaat het goed als ik bijvoorbeeld zoekt van weeknummer 13 tot week 45 in het zelfde jaar. Maar als ik nu gaat zoeken van bijvoorbeeld week 19 2001 tot week 23 2003 dan krijg ik alleen alle data wat TUSSEN week 19 en 23 zit EN tussen 2001 en 2003.
Wat ik wil is dus van week 19 2001 tot en met week 23 2003!
Ik weet het echt niet meer hoe ik dit kan aanpakken. Ik heb al met haakjes gerommeld en op een andere manier de query opgebouwd, dus door de war zetten maar dat help allemaal niet
Week wordt dus gevuld met het weeknummer en het Jaar met het jaar (duh!).
Nu heb ik een rapport gemaakt om te kunnen kijken over een bepaalde periode om te kijken hoeveel uur er op een bepaald ordernummer is geschreven. Ik heb daar een hele lange query van gemaakt, ik hoop dat jullie hem snappen?
ASP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
| If GebruikVanTot = "1" Then QUERYVanTot = "((CINt(Week) > " & CInt(VanWeeknummer-1) & " AND CINt(Jaar) > " & CInt(VanJaar-1) & ") AND (CInt(Week) < " & CInt(TotWeeknummer+1) & " AND CInt(Jaar) < " & CInt(TotJaar+1) & ")) AND " ' QUERYVanTot = "(CINt(Week) > " & CInt(VanWeeknummer-1) & " AND CINt(Jaar) > " & CInt(VanJaar-1) & ") AND (CInt(Week) < " & CInt(TotWeeknummer+1) & " AND CInt(Jaar) < " & CInt(TotJaar+1) & ") AND " ' QUERYVanTot = "CINt(Week) > " & CInt(VanWeeknummer-1) & " AND CInt(Week) < " & CInt(TotWeeknummer+1) & " AND CINt(Jaar) > " & CInt(VanJaar-1) & " AND CInt(Jaar) < " & CInt(TotJaar+1) & " AND " Else QUERYVanTot = "" End If If UrenOptellen <> "Ja" Then If UitvoeringManagement = "Alle" Then SQLstring = "SELECT TotaalKosten AS tTotaalKosten, Regnummer, NormaleUren AS tNormaleUren, OV1 AS tOV1, OV2 AS tOV2, OV3 AS tOV3, OV4 AS tOV4, Reisuren AS tReisuren, Datum AS tDatum, Week AS tWeek, Jaar AS tJaar, Subnummer AS tSubnummer FROM Tijdlijst WHERE OrderNummer LIKE '" & OrdNum & "' AND " & QUERYVanTot & " SubNummer LIKE '" & SubNum & "' ORDER BY Regnummer" ElseIf UitvoeringManagement = "U" Then SQLstring = "SELECT TotaalKosten AS tTotaalKosten, Regnummer, NormaleUren AS tNormaleUren, OV1 AS tOV1, OV2 AS tOV2, OV3 AS tOV3, OV4 AS tOV4, Reisuren AS tReisuren, Datum AS tDatum, Week AS tWeek, Jaar AS tJaar, Subnummer AS tSubnummer FROM Tijdlijst WHERE OrderNummer LIKE '" & OrdNum & "' AND " & QUERYVanTot & " SubNummer LIKE '" & SubNum & "' AND UitvoeringManagement LIKE 'Uitvoering' ORDER BY Regnummer" ElseIf UitvoeringManagement = "ME" Then SQLstring = "SELECT TotaalKosten AS tTotaalKosten, Regnummer, NormaleUren AS tNormaleUren, OV1 AS tOV1, OV2 AS tOV2, OV3 AS tOV3, OV4 AS tOV4, Reisuren AS tReisuren, Datum AS tDatum, Week AS tWeek, Jaar AS tJaar, Subnummer AS tSubnummer FROM Tijdlijst WHERE OrderNummer LIKE '" & OrdNum & "' AND " & QUERYVanTot & " SubNummer LIKE '" & SubNum & "' AND (UitvoeringManagement LIKE 'Management' OR UitvoeringManagement LIKE 'Engineering') ORDER BY Regnummer" End If Else If UitvoeringManagement = "Alle" Then SQLstring = "SELECT Count(*), Sum(TotaalKosten) AS tTotaalKosten, Regnummer, Sum(NormaleUren) AS tNormaleUren, Sum(OV1) AS tOV1, Sum(OV2) AS tOV2, Sum(OV3) AS tOV3, Sum(OV4) AS tOV4, Sum(Reisuren) AS tReisuren FROM Tijdlijst WHERE OrderNummer LIKE '" & OrdNum & "' AND " & QUERYVanTot & " SubNummer LIKE '" & SubNum & "' GROUP BY Regnummer ORDER BY Regnummer" ElseIf UitvoeringManagement = "U" Then SQLstring = "SELECT Count(*), Sum(TotaalKosten) AS tTotaalKosten, Regnummer, Sum(NormaleUren) AS tNormaleUren, Sum(OV1) AS tOV1, Sum(OV2) AS tOV2, Sum(OV3) AS tOV3, Sum(OV4) AS tOV4, Sum(Reisuren) AS tReisuren FROM Tijdlijst WHERE OrderNummer LIKE '" & OrdNum & "' AND " & QUERYVanTot & " SubNummer LIKE '" & SubNum & "' AND UitvoeringManagement LIKE 'Uitvoering' GROUP BY Regnummer ORDER BY Regnummer" ElseIf UitvoeringManagement = "ME" Then SQLstring = "SELECT Count(*), Sum(TotaalKosten) AS tTotaalKosten, Regnummer, Sum(NormaleUren) AS tNormaleUren, Sum(OV1) AS tOV1, Sum(OV2) AS tOV2, Sum(OV3) AS tOV3, Sum(OV4) AS tOV4, Sum(Reisuren) AS tReisuren FROM Tijdlijst WHERE OrderNummer LIKE '" & OrdNum & "' AND " & QUERYVanTot & " SubNummer LIKE '" & SubNum & "' AND (UitvoeringManagement LIKE 'Management' OR UitvoeringManagement LIKE 'Engineering') GROUP BY Regnummer ORDER BY Regnummer" End If End If |
Nu als de functie GebruikVanTot wordt gebruikt dan gaat het goed als ik bijvoorbeeld zoekt van weeknummer 13 tot week 45 in het zelfde jaar. Maar als ik nu gaat zoeken van bijvoorbeeld week 19 2001 tot week 23 2003 dan krijg ik alleen alle data wat TUSSEN week 19 en 23 zit EN tussen 2001 en 2003.
Wat ik wil is dus van week 19 2001 tot en met week 23 2003!
Ik weet het echt niet meer hoe ik dit kan aanpakken. Ik heb al met haakjes gerommeld en op een andere manier de query opgebouwd, dus door de war zetten maar dat help allemaal niet
[ Voor 13% gewijzigd door Polderdijk op 21-05-2003 14:39 . Reden: code=asp ]
Webhosting van SkyHost.nl: 25 Mb / 1 Gb windows hosting € 4,50 p/m excl.btw!