---
title: "Variabel utanför function"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/81806-variabel-utanför-function"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "joup"
published: "2003-07-11T11:09:01.000Z"
updated: "2003-07-11T13:32:03.000Z"
replies: 5
views: 279
page: 1
pages: 1
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/81806-variabel-utanför-function"
---

# Variabel utanför function

## #1 — joup, 2003-07-11T11:09Z

Jag har en liten funktion som hämtar data från en forumlär och skriver det till ett XML-dokument. Problemet är att jag har en variabel, FinnsFil, som jag vill skall kunna gå att komma åt även utanför funktionen. Hur gör man det?

```
Function addNewContacttoXML(strXMLFilePath, strFileName)

 'Declare local variables.
 Dim objDom
 Dim objRoot
 Dim objRecord
 Dim objIngr
 Dim objField
 Dim objFieldValue
 Dim objattID
 Dim objattTabOrder
 Dim objPI
 Dim objPI2
 Dim FilFinns
 Dim x

 Set objDom = server.CreateObject("Microsoft.XMLDOM")
 objDom.preserveWhiteSpace = True

 FilFinns = objDom.Load(strXMLFilePath & "\" & strFileName)

 If FilFinns = True Then

	Response.Write("Det här drinkrecepet finns redan. ")

 Else

  Set objRoot = objDom.createElement("drink")
  objDom.appendChild objRoot

 Set objIngr = objDom.createElement("ingredienser")
 objRoot.appendChild objIngr

 For x = 1 To Request.Form.Count

  If instr(1,Request.Form.Key(x),"knapp") = 0 Then

	If len(Request.Form(x))>0 then

	if left(Request.Form.Key(x),4) = "namn" then

 Set objNam = objDom.createElement("ingrediens")
 objIngr.appendChild objNam

   Set objField = objDom.createElement(left(Request.Form.Key(x),4))

   objField.Text = Request.Form(x)

   objNam.appendChild objField

	else

   Set objField = objDom.createElement(left(Request.Form.Key(x),10))

   objField.Text = Request.Form(x)

   objRoot.appendChild objField

	end if

	End if

   Set objField = objDom.createElement("bild")

   objField.Text = Trim(Replace(Request.Form("drinknamn")," ","")) & ".jpg"

   objRoot.appendChild objField

  End If

 Next 

 If FilFinns = False then

  Set objPI2 = objDom.createProcessingInstruction("xml-stylesheet", "type='text/xsl' href='drink.xslt'")

  objDom.insertBefore objPI2, objDom.childNodes(0)

  Set objPI = objDom.createProcessingInstruction("xml", "version='1.0' encoding='ISO-8859-1'")

  objDom.insertBefore objPI, objDom.childNodes(0)

 End If

 objDom.save strXMLFilePath & "\" & strFileName

 End If

 Set objDom = Nothing
 Set objRoot = Nothing
 Set objRecord = Nothing
 Set objField = Nothing
 Set objFieldValue = Nothing
 Set objattID = Nothing
 Set objattTabOrder = Nothing
 Set objPI = Nothing

End Function

On Error Resume Next

addNewContacttoXML Server.MapPath("/xml/drinkar"),Trim(Replace(Request.Form("drinknamn")," ","")) & ".xml"

If err.number <> 0 then
 Response.write("Det blev något fel när ditt drinkrecept skulle sparas.<br>")
Else
 If FilFinns = False then
 Response.write("Ditt drinkrecept är sparat.<br>")
 End If
End If
```

Det är alltså längst ned där, i "error"-hanteringen som jag vill att FilFinns skall gå att anropa. Men det vill inte riktigt fungera... :(

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

## #2 — Peeer, 2003-07-11T11:11Z

Det går inte att hämta en variabel innifrån en funktion på det viset (eller?). Du kan väl skapa en temporär session inne i funktionen som du sedan kontrollerar och förstör.

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

## #3 — @nders, 2003-07-11T11:12Z

Eftersom du har "Dim FilFinns" i funktionen blir den lokal. Flytta ut det utanför så blir den global.

Mvh

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

## #4 — joup, 2003-07-11T11:17Z

Ah, vad dum jag är :)

Tack för hjälpen @nders!

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

## #5 — solbulle, 2003-07-11T13:30Z

Det där är väl för övrigt ett praktexempel på en Sub och ingen funktion?

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

## #6 — @nders, 2003-07-11T13:32Z

> **solbulle skrev:**
>
> Det där är väl för övrigt ett praktexempel på en Sub och ingen funktion?

Japp.

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/81806-variabel-utanför-function
