---
title: "kalender som visar matcher, tuneringar och träningar"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/128156-kalender-som-visar-matcher-tuneringar-och-träningar/page6"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "PLks"
published: "2005-05-13T09:12:46.000Z"
updated: "2005-06-25T20:05:08.000Z"
replies: 137
views: 3818
page: 6
pages: 7
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/128156-kalender-som-visar-matcher-tuneringar-och-träningar"
---

# kalender som visar matcher, tuneringar och träningar

_Sida 6 av 7._

## #101 — @nders, 2005-05-23T08:27Z

Jag fattar inte alls vad du håller på med om jag ska vara helt ärlig. Varför har du lagt in en do-loop där?

Du har heller ingen next i dina else-if-satser, varför har du tagit bort dem???

Permalänk: https://www.webforum.nu/p/1615633

## #102 — PLks, 2005-05-23T08:38Z

\[CITAT@nders\]Jag fattar inte alls vad du håller på med om jag ska vara helt ärlig. Varför har du lagt in en do-loop där?
 Jag latill i ren desperation, eftersom jag inte lyckas få koden förstå vad jag vill göra ( pseudokod)

1. om "cup" kolla om 

   ```
   iDag = Day(rsBokad("startDatum"))
   ```
2. Om ja -\> skriv
3. kolla om 

   ```
   iDag = Day(rsBokad("startDatum") + 1)
   ```
4. göra om #3 tills *rsBokad("endDatum")* är nådd
5. gå till nästa *ElseIf*

 

> Du har heller ingen next i dina else-if-satser, varför har du tagit bort dem???

 Brinkster sa´åt mig att ta bort dessa

Permalänk: https://www.webforum.nu/p/1615637

## #103 — @nders, 2005-05-23T08:41Z

Nej, Brinkster sa inte åt dig det.

Brinkster sade, "Det är något som saknas i din kod. Indentera koden så ser du vad som saknas."

Permalänk: https://www.webforum.nu/p/1615639

## #104 — PLks, 2005-05-23T08:46Z

med

```
Do While Not rsBokad.EOF
	If Left(rsBokad("aktivitet"), 3) = "Trä"  then
		Response.Write "</FONT></B></TD><TD CLASS=""tdcal""  VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
		Response.Write ", kl " & FormatDateTime(rsBokad("startTid"), 4) & " - "
		Response.Write FormatDateTime(rsBokad("endTid"), 4) & " , " & rsBokad("lokal")
	ElseIf Left(rsBokad("aktivitet"), 2) = "Ma" Then
		Response.Write "</FONT></B></TD><TD CLASS=""tdcal""  VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
		Response.Write " mot  " & rsBokad("Mot")
		Response.Write " i " & rsBokad("lokal") & ", kl " 
		Response.Write  FormatDateTime(rsBokad("startTid"), 4) 
	ElseIf Right(rsBokad("aktivitet"), 3) = "Cup" Then
		dStartDate = Cdate(rsBokad("startDatum"))
		dEndDate = Cdate(rsBokad("endDatum"))
		For dTempDate = dStartDate to dEndDate
			If cint(manad) = Month(dTempDate) AND iDag = Day(dTempDate) then
				Response.Write "</FONT></B></TD><TD CLASS=""tdcal""  VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
				Response.Write ", i " & rsBokad("lokal")
			End If
		Next
	ElseIf Right(rsBokad("aktivitet"), 3) = "Cam" Then
		dStartDate = Cdate(rsBokad("startDatum"))
		dEndDate = Cdate(rsBokad("endDatum"))
		For dTempDate = dStartDate to dEndDate
			If cint(manad) = Month(dTempDate) AND iDag = Day(dTempDate) then
				Response.Write "</FONT></B></TD><TD CLASS=""tdcal""  VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
				Response.Write ", i " & rsBokad("lokal")
			End If
		Next
	Else
		Response.Write "</FONT></B></TD><TD CLASS=""tdcal""  VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
		Response.Write ", i " & rsBokad("lokal")
				
	End if
	rsBokad.MoveNext
Loop

rsBokad.Close
```

 skrivs bara första "Eken Cup" ut...

Permalänk: https://www.webforum.nu/p/1615643

## #105 — PLks, 2005-05-23T09:37Z

jag håller på att bli galen! Det ända jag kommer fram till att felet måste ligga i koden 

```
ElseIf Right(rsBokad("aktivitet"), 3) = "Cup" Then
dStartDate = Cdate(rsBokad("startDatum"))
dEndDate = Cdate(rsBokad("endDatum"))
For dTempDate = dStartDate to dEndDate
If cint(manad) = Month(dTempDate) AND iDag = Day(dTempDate) then
	Response.Write "</FONT></B></TD><TD CLASS=""tdcal"" VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
	Response.Write ", i " & rsBokad("lokal")
End If
Next
ElseIf Right(rsBokad("aktivitet"), 3) = "Cam" Then
dStartDate = Cdate(rsBokad("startDatum"))
dEndDate = Cdate(rsBokad("endDatum"))
For dTempDate = dStartDate to dEndDate
If cint(manad) = Month(dTempDate) AND iDag = Day(dTempDate) then
	Response.Write "</FONT></B></TD><TD CLASS=""tdcal"" VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
	Response.Write ", i " & rsBokad("lokal")
End If
Next
```

 
Ovanstående kod gör helt enkelt inte det jag vill:

1. If Right(rsBokad("aktivitet"), 3) = "Cam" Then
2. if dTempDate = dStartDate
3. set dTempDate = dStartDate + 1
4. If cint(manad) = Month(dTempDate) AND iDag = Day(dTempDate) then Write
5. set dTempDate = dStartDate + 2
6. If cint(manad) = Month(dTempDate) AND iDag = Day(dTempDate) then Write
7. upprepa tills dTempDate = dendDate

Permalänk: https://www.webforum.nu/p/1615676

## #106 — @nders, 2005-05-23T09:53Z

Jag tycker det ser ut som att vid "Cup" och "Cam" körs likadan kod. Vad är det för skillnad på de två olika casen?

Är det bara "Cam"-caset det är fel på? Hur blir det? Hur vill du att det ska bli?

Permalänk: https://www.webforum.nu/p/1615685

## #107 — PLks, 2005-05-23T10:02Z

jag måste vara dåligpå att förklara\*snyft\*
Jag har inget "Cam" i databasen nu, därför tjatar jag om Cup...

> Hur vill du att det ska bli?

 ber om ursäkt, men det har jag väl förklarat hur jag vill?
Vill båda fallen ha på samma sätt.
Som jag skrev förra gången:
För varje loop skall kollas

1. finns dautmet i databasen?
2. kolla vilken tabellrad händelsen hamnar på (Med "If cint(manad) = Month(dTempDate) AND iDag = Day(dTempDate)")
3. skriv ut "Ekens Cup"
4. ta nästa datum dvs starDate+1 -\> #1 -3
5. ta nästa datum,dvs datum = startDate+2 \_\> upprepa
6. Gör detta tills startdatum =endDatum

 
har ja glyckats bättre att förklara?

Permalänk: https://www.webforum.nu/p/1615695

## #108 — PLks, 2005-05-23T10:23Z

[Detta borde väl vara tillämpad i mitt fall med?](http://www.webforum.nu/showthread.php?s=&postid=1031123#post1031123)

Permalänk: https://www.webforum.nu/p/1615706

## #109 — PLks, 2005-05-23T15:00Z

Efter att  ha sökt här på forumet fick jag lite idéer från bla dessa trådar[av @nders](http://www.webforum.nu/showthread.php?s=&postid=840480#post840480)  och [Palle](http://www.webforum.nu/showthread.php?s=&postid=1030688#post1030688).

Jag satte igång och krearade detta

```
Set minCon = Server.CreateObject("ADODB.Connection")
set rsBokad = Server.CreateObject("ADODB.Recordset")
        
minCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("\ovaasp\db\upptaget.mdb")
strSQL = "SELECT * FROM upptaget WHERE month(startDatum) = " & manad & " AND day(startDatum) = " & iDag & ""
strSQL = strSQL & "WHERE startDatum between #" & dStartDate & "# AND #" &  dEndDate & "#"
strSQL = strSQL & "ORDER by ID startDatum ASC"
rsBokad.Open strSQL, minCon, 3, 3
      dStartDate = Cdate(rsBokad("startDatum"))
	  dEndDate = Cdate(rsBokad("endDatum"))
Do While Not rsBokad.EOF
	If Left(rsBokad("aktivitet"), 3) = "Trä"  then
		Response.Write "</FONT></B></TD><TD CLASS=""tdcal""  VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
		Response.Write ", kl " & FormatDateTime(rsBokad("startTid"), 4) & " - "
		Response.Write FormatDateTime(rsBokad("endTid"), 4) & " , " & rsBokad("lokal")
	ElseIf Left(rsBokad("aktivitet"), 2) = "Ma" Then
		Response.Write "</FONT></B></TD><TD CLASS=""tdcal""  VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
		Response.Write " mot  " & rsBokad("Mot")
		Response.Write " i " & rsBokad("lokal") & ", kl " 
		Response.Write  FormatDateTime(rsBokad("startTid"), 4) 
	ElseIf Right(rsBokad("aktivitet"), 3) = "Cup" Then
		For dDag = dstartDate To DateAdd("D", dStartDate, +DateDiff("D", dStartDate, dEndDate))
			If cint(manad) = Month(dDag) AND iDag = Day(dDag) then
				Response.Write "</FONT></B></TD><TD CLASS=""tdcal""  VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
				Response.Write ", i " & rsBokad("lokal")
			End If
		Next
	ElseIf Right(rsBokad("aktivitet"), 3) = "Cam" Then
		For dDag = dstartDate To DateAdd("D", dStartDate, +DateDiff("D", dStartDate, dEndDate))
			If cint(manad) = Month(dDag) AND iDag = Day(dDag) then
				Response.Write "</FONT></B></TD><TD CLASS=""tdcal""  VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
				Response.Write ", i " & rsBokad("lokal")
			End If
		Next
	Else
		Response.Write "</FONT></B></TD><TD CLASS=""tdcal""  VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
		Response.Write ", i " & rsBokad("lokal")
				
	End if
	rsBokad.MoveNext
Loop

rsBokad.Close
```

 får fel
 

> Set minCon = Server.CreateObject("ADODB.Connection")
> set rsBokad = Server.CreateObject("ADODB.Recordset")
>         
> minCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("\\ovaasp\\db\\upptaget.mdb")
> strSQL = "SELECT \* FROM upptaget WHERE month(startDatum) = " & manad & " AND day(startDatum) = " & iDag & ""
> strSQL = strSQL & "WHERE startDatum between #" & dStartDate & "# AND #" &  dEndDate & "#"
> strSQL = strSQL & "ORDER by ID startDatum ASC"
> rsBokad.Open strSQL, minCon, 3, 3
>       dStartDate = Cdate(rsBokad("startDatum"))
> 	  dEndDate = Cdate(rsBokad("endDatum"))
> Do While Not rsBokad.EOF
> 	If Left(rsBokad("aktivitet"), 3) = "Trä"  then
> 		Response.Write "\</FONT\>\</B\>\</TD\>\<TD CLASS=""tdcal""  VALIGN=""BOTTOM""\>" & rsBokad("aktivitet")
> 		Response.Write ", kl " & FormatDateTime(rsBokad("startTid"), 4) & " - "
> 		Response.Write FormatDateTime(rsBokad("endTid"), 4) & " , " & rsBokad("lokal")
> 	ElseIf Left(rsBokad("aktivitet"), 2) = "Ma" Then
> 		Response.Write "\</FONT\>\</B\>\</TD\>\<TD CLASS=""tdcal""  VALIGN=""BOTTOM""\>" & rsBokad("aktivitet")
> 		Response.Write " mot  " & rsBokad("Mot")
> 		Response.Write " i " & rsBokad("lokal") & ", kl " 
> 		Response.Write  FormatDateTime(rsBokad("startTid"), 4) 
> 	ElseIf Right(rsBokad("aktivitet"), 3) = "Cup" Then
> 		For dDag = dstartDate To DateAdd("D", dStartDate, +DateDiff("D", dStartDate, dEndDate))
> 			If cint(manad) = Month(dDag) AND iDag = Day(dDag) then
> 				Response.Write "\</FONT\>\</B\>\</TD\>\<TD CLASS=""tdcal""  VALIGN=""BOTTOM""\>" & rsBokad("aktivitet")
> 				Response.Write ", i " & rsBokad("lokal")
> 			End If
> 		Next
> 	ElseIf Right(rsBokad("aktivitet"), 3) = "Cam" Then
> 		For dDag = dstartDate To DateAdd("D", dStartDate, +DateDiff("D", dStartDate, dEndDate))
> 			If cint(manad) = Month(dDag) AND iDag = Day(dDag) then
> 				Response.Write "\</FONT\>\</B\>\</TD\>\<TD CLASS=""tdcal""  VALIGN=""BOTTOM""\>" & rsBokad("aktivitet")
> 				Response.Write ", i " & rsBokad("lokal")
> 			End If
> 		Next
> 	Else
> 		Response.Write "\</FONT\>\</B\>\</TD\>\<TD CLASS=""tdcal""  VALIGN=""BOTTOM""\>" & rsBokad("aktivitet")
> 		Response.Write ", i " & rsBokad("lokal")
> 				
> 	End if
> 	rsBokad.MoveNext
> Loop
> 
> rsBokad.Close

 
rad 290:

```
rsBokad.Open strSQL, minCon, 3, 3
```

Permalänk: https://www.webforum.nu/p/1615843

## #110 — @nders, 2005-05-23T17:50Z

Uhm, vad får du för fel nu, sa du? Lite copy/paste-fel där kanske?

Och, jag förstår *ungefär* vad det är du vill ha ut. Det jag inte förstår är alla dina kodändringar "i ren desperation", som både kladdar till, och tar dig ett (minst) steg tillbaka. (...och gör det svårare för oss andra att förstå vad du håller på med.

Men det är klart, alltid lär man sig något. :)

Permalänk: https://www.webforum.nu/p/1615914

## #111 — PLks, 2005-05-24T05:55Z

> **@nders skrev:**
>
> Uhm, vad får du för fel nu, sa du? Lite copy/paste-fel där kanske?

 Microsoft JET Database Engine error '80040e14' 
Syntax error (missing operator) in query expression 'month(startDatum) = 5 AND day(startDatum) = 1WHERE startDatum between ## AND ##'. 

/ovaasp/skrivbordskalender1115.asp, line 290 

> **@nders skrev:**
>
> Det jag inte förstår är alla dina kodändringar "i ren desperation"

Eftersom jag varken med eller utan ert hjälp lyckas lösa uppgiften,så måste jag fortsätta leta...
För faktum kvarstår att jag/vilyckas inte lista ut alla *Ekens Cup* på rätt datum

Permalänk: https://www.webforum.nu/p/1616028

## #112 — @nders, 2005-05-24T06:01Z

> Microsoft JET Database Engine error '80040e14' 
> Syntax error (missing operator) in query expression 'month(startDatum) = 5 AND day(startDatum) = 1WHERE startDatum between ## AND ##'. 
> 
> /ovaasp/skrivbordskalender1115.asp, line 290

Lite enkel korrläsning:
1) Du saknar ett mellanslag före WHERE.
2) Variablerna dStartDate och dEndDate är tomma. Du skapar ju inte de variablerna förrän i loopen efter att du kört SQL-frågan.

Permalänk: https://www.webforum.nu/p/1616031

## #113 — PLks, 2005-05-24T06:11Z

> **@nders skrev:**
>
> Lite enkel korrläsning:
> 1) Du saknar ett mellanslag före WHERE.
> 2) Variablerna dStartDate och dEndDate är tomma. Du skapar ju inte de variablerna förrän i loopen efter att du kört SQL-frågan.

 

1. skall jag placera variablerna direkt efter SQL-frågan?
2. är detta annars en bra lösning?

 
*Lite förklaring till fråga b*
Det är fortfarande så [som ni kan se för er själva (gå tillnästa månad)](http://www45.brinkster.com/ovaasp/skrivbordskalender115.asp) att med koden

```
strSQL = "SELECT * FROM upptaget WHERE month(startDatum) = " & manad & " AND day(startDatum) = " & iDag & " ORDER by ID ASC"
rsBokad.Open strSQL, minCon, 3, 3
Do While Not rsBokad.EOF

If Left(rsBokad("aktivitet"), 3) = "Trä"  then
	        Response.Write "</FONT></B></TD><TD CLASS=""tdcal""  VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
	 	    Response.Write ", kl " & FormatDateTime(rsBokad("startTid"), 4) & " - "
	 	    Response.Write FormatDateTime(rsBokad("endTid"), 4) & " , " & rsBokad("lokal")
	    ElseIf Left(rsBokad("aktivitet"), 2) = "Ma" Then
		            Response.Write "</FONT></B></TD><TD CLASS=""tdcal""  VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
		            Response.Write " mot  " & rsBokad("Mot")
		            Response.Write " i " & rsBokad("lokal") & ", kl " 
		            Response.Write  FormatDateTime(rsBokad("startTid"), 4) 
		         
End If
If Right(rsBokad("aktivitet"), 3) = "Cup" Then
	              dStartDate = Cdate(rsBokad("startDatum"))
	              dEndDate = Cdate(rsBokad("endDatum"))
		                For dTempDate = dStartDate to dEndDate
		                 Response.Write "</FONT></B></TD><TD CLASS=""tdcal""  VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
		                 Response.Write ", i " & rsBokad("lokal")
						 Next
		   		   ElseIf Right(rsBokad("aktivitet"), 3) = "Cam" Then
	                     dStartDate = Cdate(rsBokad("startDatum"))
	                     dEndDate = Cdate(rsBokad("endDatum"))
		          For dTempDate = dStartDate to dEndDate
		                Response.Write "</FONT></B></TD><TD CLASS=""tdcal""  VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
		                Response.Write ", i " & rsBokad("lokal")
                       Next
Else
	      Response.Write "</FONT></B></TD><TD CLASS=""tdcal""  VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
		  Response.Write ", i " & rsBokad("lokal")
End if
	rsBokad.MoveNext
Loop
    rsBokad.Close
```

 listas endast Eken Cups första dag = 3/6 och Eken cup håller på i 4 dagar - [som ni kan se här](http://www45.brinkster.com/ovaasp/list.asp), dvs mellan 3/6 och 7/6

Permalänk: https://www.webforum.nu/p/1616033

## #114 — @nders, 2005-05-24T06:20Z

> skall jag placera variablerna direkt efter SQL-frågan?

Du kan inte använda variabler innan du har definierat dem. Dvs, ska du ha dem i SQL-frågan måste du definiera variablerna innan dess.

Jag har f.t. inte tid att analysera dina kodstycken idag, speciellt inte när indenteringen är hemsk. Lessen.

Permalänk: https://www.webforum.nu/p/1616035

## #115 — PLks, 2005-05-24T06:25Z

> speciellt inte när indenteringen är hemsk

 så den är fortf hemsk...och jag som hoppades att jag blivit bättre

> Du kan inte använda variabler innan du har definierat dem

 med definiera menar du 

```
dim
```

 ?

Permalänk: https://www.webforum.nu/p/1616037

## #116 — @nders, 2005-05-24T06:32Z

ASP-kod körs uppifrån och ner. Du kan inte använda variabler innan, dvs ovanför, de skapats / fått värden.

Permalänk: https://www.webforum.nu/p/1616039

## #117 — PLks, 2005-05-24T06:35Z

men, det får väl värde genom:

```
dStartDate = Cdate(rsBokad("startDatum"))
	  dEndDate = Cdate(rsBokad("endDatum"))
```

 trodde iaf jag..

Permalänk: https://www.webforum.nu/p/1616040

## #118 — PLks, 2005-05-24T13:55Z

Har ni tippspå online-läsning i ovanstående?. Pga flyttnig är mina böcker nerpackade

Permalänk: https://www.webforum.nu/p/1616255

## #119 — PLks, 2005-05-24T14:22Z

Nu har jag ändrat lite tilll....

```
<%
Response.Write "<CENTER><FONT SIZE =""4""><B>" & FirstVersal(MonthName(manad)) & ", " & ar & "</B></FONT></CENTER>"
Response.Write "<CENTER><TABLE CLASS=""table"" CELLSPACING=""0"" CELLPADDING=""1"">"
For iDag = 1 to DatePart("d", DateSerial(ar, manad+1, 0)) 
	aDagar(iDag) = WeekDayName(DatePart("w",ar & "-" & manad & "-" & iDag))
	iWeekDay = DatePart("w",ar & "-" & manad & "-" & iDag)
    

Dim strSQL
Dim dStartDate, dEndDate 

Response.Write "<TR><TD CLASS=""tdleft"" ALIGN=""CENTER"" VALIGN=""BOTTOM""><CENTER><B><FONT SIZE=""5"">"
Response.Write iDag
Response.Write "</FONT></B></CENTER></TD><TD CLASS=""tdnamn"" VALIGN=""BOTTOM"">" &  FirstVersal(aDagar(iDag)) & "</TD>"
[B]minCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("\ovaasp\db\upptaget.mdb")[/B]
  dStartDate = Cdate(rsBokad("startDatum"))
  dEndDate = Cdate(rsBokad("endDatum"))
       
strSQL = "SELECT * FROM upptaget WHERE month(startDatum) = " & manad & " AND day(startDatum) = " & iDag & ""
strSQL = strSQL & " WHERE startDatum between #" & dStartDate & "# AND #" &  dEndDate & "#"
strSQL = strSQL & " ORDER by ID startDatum ASC"
rsBokad.Open strSQL, minCon, 3, 3
         Do While Not rsBokad.EOF
```

 men får fel

> Microsoft VBScript runtime error '800a01a8' 
> Object required: '' 
> 
> /ovaasp/skrivbordskalender1115.asp, line 284

 men har ju redan "på den raden...

Permalänk: https://www.webforum.nu/p/1616267

## #120 — J.N., 2005-05-24T15:28Z

HEJ!

> **PLks skrev:**
>
> > Microsoft VBScript runtime error '800a01a8' 
> > Object required: '' 
> > 
> > /ovaasp/skrivbordskalender1115.asp, line 284
>
>  men har ju redan "på den raden...

Felmeddelandet betyder inte att du saknar citationstecken, du saknar ett objekt på den raden. (Fnuttar är aldrig objekt!)

Någonstans i koden har du alltså stängt, felstavat eller på annat sätt inte ett skapat objekt minCon på denna rad.

Permalänk: https://www.webforum.nu/p/1616303

---

Tråden på webben: https://www.webforum.nu/amne/asp/128156-kalender-som-visar-matcher-tuneringar-och-träningar/page6  
Föregående sida: https://www.webforum.nu/amne/asp/128156-kalender-som-visar-matcher-tuneringar-och-träningar/page5.md  
Nästa sida: https://www.webforum.nu/amne/asp/128156-kalender-som-visar-matcher-tuneringar-och-träningar/page7.md
