---
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/page2"
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: 2
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 2 av 7._

## #21 — PLks, 2005-05-17T07:01Z

här kommer databasen

Bilagor:

- [1.rar](https://www.webforum.nu/a/6353.rar)

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

## #22 — @nders, 2005-05-17T07:06Z

Nu börjar jag kanske, möjligen (fast tveksamt förstås) förstå vad det är du försöker dig på i else-blocket. Är det något sånt här du är ute efter?

```
	Else 
		dStartDate = Cdate(rsBokad("startDatum"))
		dEndDate = Cdate(rsBokad("endDatum"))
		For dTempDate = dStartDate to dEndDate
			Response.Write dTempDate & " " & rsBokad("aktivitet") & " i "  	
			Response.Write rsBokad("lokal")
		Next
	End if
```

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

## #23 — PLks, 2005-05-17T07:36Z

> **@nders skrev:**
>
> Nu börjar jag kanske, möjligen (fast tveksamt förstås) förstå vad det är du försöker dig på i else-blocket. Är det något sånt här du är ute efter?

 Tack du är en klippa :bire - som vanligt!
Men varför tveksam?

Det hela skall mynna ut i följande (kodad på ren svenska)

```
[list=1]
[*]Om  dagens datum = rsBokad("startDatum")?skriv ut aktivitet, lokal
[*]Om  dagens datum = dTempDate skriv ut aktivitet, lokal
[/list=1]
```

 
jag trodde/tror att lättare att mixtra med ovanstående, när jag fått till utskrifterna

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

## #24 — @nders, 2005-05-17T07:41Z

> Men varför tveksam?

Jag var bara tveksam till att jag förstått hur du ville ha det. :)

Du menar alltså att du bara vill ha utskriften om dagens datum är rsBokad("startDatum") eller dTempDatum? Då räcker det nog med att kolla dTempDatum, eftersom loopen börjar på rsBokad("startDatum"), därmed har dTempDatum det värdet till att börja med.

Då kan det alltså se ut så här:

```
		For dTempDate = dStartDate to dEndDate
			If dTempDate = Date then
				Response.Write dTempDate & " " & rsBokad("aktivitet") & " i "  	
				Response.Write rsBokad("lokal")
			End if
		Next
```

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

## #25 — PLks, 2005-05-17T08:29Z

Nu kommer vi till förklaringen ;) 
Jag har en kalender [av skrivbordstyp](http://www45.brinkster.com/ovaasp/skrivbordskalender.asp) där man får dagens namn, om det finns helgdagar mm så printas dessa i rätt ruta…
Koden för  pingstdagen är tex. 

```
 
ElseIf int(manad) = Month(pingstd) AND iDag = Day(pingstd) then
Response.Write "</FONT></B>></TD><TD CLASS=""tdhelg"" VALIGN=""BOTTOM"">"
Response.Write "Pingstdagen
```

Det jag vill göra nu är med pseudokod

```
[list=1]
[*]Om dagens datum finns i rsBokat(”startDatum”)
[*]If Left(rsBokad("aktivitet"), 3) = "Trä" Then
		Response.Write "<P>" & rsBokad("startDatum") & "  " & rsBokad("aktivitet") & " " 
		Response.Write rsBokad("startTid") & " - " 
		Response.Write rsBokad("endTid") & " , " & rsBokad("lokal") & "<P>"

[*]ElseIf Left(rsBokad("aktivitet"), 2) = "Ma" Then
		Response.Write rsBokad("startDatum") & "  " & rsBokad("aktivitet") & " mot  " 
		Response.Write rsBokad("Mot") & " i" & rsBokad("lokal") & ", kl " 
		Response.Write  rsBokad("startTid") & "<P>"
,
[*]Else 
		dStartDate = Cdate(rsBokad("startDatum"))
		dEndDate = Cdate(rsBokad("endDatum"))
		For dTempDate = dStartDate to dEndDate
			Response.Write dTempDate & " " & rsBokad("aktivitet") & " i "  	
			Response.Write rsBokad("lokal")
		Next
	End if [*]akjlkfaölkölaf
 [/list=1]
```

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

## #26 — PLks, 2005-05-18T17:29Z

Nu har jag försökt sy ihop det hela, dvs få det utskrivet i kalendern delar avkoden(restän funkar)

```
<%
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)
   [blue] dStartDate = Cdate(rsBokad("startDatum"))
	dEndDate = Cdate(rsBokad("endDatum"))[/blue] 

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>"[blue] 
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 ORDER by ID DESC"
rsBokad.Open strSQL, minCon, 3, 3
Do While Not rsBokad.EOF
If int(manad) = Month(rsBokad("startDatum")) AND iDag = Day(rsBokad("startDatum"))_
AND  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) 
[B]Else For dTempDate = dStartDate to dEndDate Then[/B]
			If int(manad) = Month(dTempDate) AND iDag = Day(dTempDate)
				Response.Write "</FONT></B></TD><TD CLASS=""tdcal""  VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
				Response.Write " i "  	
				Response.Write rsBokad("lokal")
			End if
		Next
	End if
	rsBokad.MoveNext
Loop

rsBokad.Close
Set rsBokad = Nothing
minCon.Close
Set minCon = Nothing[/blue] 
If cint(manad) = Month(GeAllhelgon(ar)) AND iDag = Day(GeAllhelgon(ar)) then
       Response.Write "</FONT></B></TD><TD CLASS=""tdhelg""  VALIGN=""BOTTOM"">"
       Response.Write  "Alla Helgons dag"
```

 
Får följande fel

> Microsoft VBScript compilation error '800a0401' 
> 
> Expected end of statement 
> 
> /ovaasp/skrivbordskalender100.asp, line 295 
> 
> For dTempDate = dStartDate to dEndDate Then
> \---------------------------------------^

 Demed blått skrivna raden är nya, övrigt har och fungerar.
Rad 295 är fetstilad
Hoppas ni kan hjälpa mig att sy ihop det hela

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

## #27 — @nders, 2005-05-18T17:42Z

Bort med *then*.

*For* ska inte heller vara på samma rad som *Else*, men det kanske bara blev så när du klippte in koden?

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

## #28 — PLks, 2005-05-18T18:09Z

Japp. blev lite fel copy/paste...

men nu får jag [fel utskriften](http://www45.brinkster.com/ovaasp/skrivbordskalender100.asp) 

> Microsoft VBScript runtime error '800a000d' 
> Type mismatch: 'rsBokad' 
> 
> /ovaasp/skrivbordskalender100.asp, line 271

 
rad 271

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

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

## #29 — @nders, 2005-05-18T18:12Z

Du måste lägga definitionerna av *dStartDate* och *dEndDate* i loopen, dvs under *Do While Not rsBokad.EOF*.

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

## #30 — PLks, 2005-05-18T18:19Z

och nu får jag 

> Microsoft VBScript runtime error '800a005e' 
> Invalid use of Null: 'CDate' 
> 
> /ovaasp/skrivbordskalender100.asp, line 285

rad 285

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

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

## #31 — @nders, 2005-05-18T18:24Z

Vad betyder det när du har NULL i fältet endDatum i tabellen?

Prova dock att lägga de två raderna precis ovanför *For dTempDate = dStartDate to dEndDate*  istället.

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

## #32 — PLks, 2005-05-18T18:30Z

> Vad betyder det när du har NULL i fältet endDatum i tabellen?

 vet inte riktigt vad du menar..
men jag antar att det är när värde saknas?
Använder ju mig av denna fält enbart när detärfrågaom återkommande händelser---

Dessutom fungerade allt som önskevärt när jag bara hade utskrift från databasen?

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

## #33 — @nders, 2005-05-18T18:31Z

Fungerar det inte om koden ligger som i <http://www.webforum.nu/showthread.php?s=&postid=1045378#post1045378> ?

Edit: då menar jag alltså placeringen av de två rader vi diskuterar nu.

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

## #34 — PLks, 2005-05-18T18:35Z

menar du

```
For dTempDate = dStartDate to dEndDate
			If dTempDate = Date then
				Response.Write dTempDate & " " & rsBokad("aktivitet") & " i "  	
				Response.Write rsBokad("lokal")
			End if
		Next
```

 
Jag måste ju jämföra

```
If int(manad) = Month(dTempDate) AND iDag = Day(dTempDate)
```

 för att det skall hamna på rätt rad (rätt tabellcell)

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

## #35 — PLks, 2005-05-18T18:37Z

koden ser ut:

```
 Else
  dStartDate = Cdate(rsBokad("startDatum"))
  dEndDate = Cdate(rsBokad("endDatum"))	
  For dTempDate = dStartDate to dEndDate 	
 If int(manad) = Month(dTempDate) AND iDag = Day(dTempDate) then
	Response.Write "</FONT></B></TD><TD CLASS=""tdcal""  VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
	Response.Write " i "  	
	Response.Write rsBokad("lokal")
			End if
		Next
	
	rsBokad.MoveNext
Loop
```

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

## #36 — @nders, 2005-05-18T18:37Z

Jag menar:

Om de två raderna som definierar dStartDate och dEndDate ligger precis efter Else, och precis innan dTempDate-loopen, fungerar det inte då?

Jag skriver tydligen extremt otydligt??

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

## #37 — @nders, 2005-05-18T18:38Z

Ja, så menar jag.

På vilket sätt funkar inte det då?

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

## #38 — PLks, 2005-05-18T18:48Z

> Microsoft VBScript compilation error '800a040e' 
> 
> 'loop' without 'do' 
> 
> /ovaasp/skrivbordskalender100.asp, line 308 
> 
> Loop
> ^

 
rad 296 - 310

```
Else
  dStartDate = Cdate(rsBokad("startDatum"))
  dEndDate = Cdate(rsBokad("endDatum"))	
  For dTempDate = dStartDate to dEndDate 	
 If int(manad) = Month(dTempDate) AND iDag = Day(dTempDate) then
	Response.Write "</FONT></B></TD><TD CLASS=""tdcal""  VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
	Response.Write " i "  	
	Response.Write rsBokad("lokal")
			End if
		Next
	
	rsBokad.MoveNext
Loop

rsBokad.Close
```

 
rad 308:

```
Loop
```

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

## #39 — @nders, 2005-05-18T18:52Z

Indentera ordentligt så ser du att du saknar ett *End if*.

```
Else
	dStartDate = Cdate(rsBokad("startDatum"))
	dEndDate = Cdate(rsBokad("endDatum"))	
	For dTempDate = dStartDate to dEndDate 	
		If int(manad) = Month(dTempDate) AND iDag = Day(dTempDate) then
			Response.Write "</FONT></B></TD><TD CLASS=""tdcal""  VALIGN=""BOTTOM"">" & rsBokad("aktivitet")
			Response.Write " i "  	
			Response.Write rsBokad("lokal")
		End if
	Next
[b]End if[/b]
```

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

## #40 — PLks, 2005-05-18T19:01Z

> Microsoft VBScript runtime error '800a005e' 
> Invalid use of Null: 'CDate' 
> 
> /ovaasp/skrivbordskalender100.asp, line 298

 
rad 298

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

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

---

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