/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Call Function - ?
Fra : Jørn Andersen


Dato : 14-09-03 15:25

Hej,

Jeg er en gang imellem stødt på et problem, hvor jeg har lavet en
Function (ikke en Sub), som ved kørsel giver en 800A0414-fejl. Noget i
retning af:
"Cannot use parentheses when calling a Sub"

Ifølge
<url: http://www.aspfaq.com/plain.asp?id=2115>
skal jeg så bruge 'Call Funktionsnavn' - og det virker så normalt
også.
Eller jeg kan droppe paranteserne - det går også godt, så længe
parametrene ikke er for sammensatte.

Mit problem er bare, at jeg har svært ved at se, hvorfor det nogle
gange er OK uden Call, mens det andre gange går galt. Jeg har haft
funktioner, hvis opbygning var meget ens, men hvor den ene krævede
Call, mens den anden ikke gjorde ..?

Anyone?

--
Jørn Andersen,
Brønshøj

 
 
Svend Pedersen (14-09-2003)
Kommentar
Fra : Svend Pedersen


Dato : 14-09-03 20:58

Jørn Andersen <jorn@jorna.dk> wrote in
news:j4u8mvcqgoc2iqf0o32f9iqf35rotu8uqg@4ax.com:

> Hej,
>
> Jeg er en gang imellem stødt på et problem, hvor jeg har lavet en
> Function (ikke en Sub), som ved kørsel giver en 800A0414-fejl. Noget i
> retning af:
> "Cannot use parentheses when calling a Sub"
>
> Ifølge
> <url: http://www.aspfaq.com/plain.asp?id=2115>
> skal jeg så bruge 'Call Funktionsnavn' - og det virker så normalt
> også.
> Eller jeg kan droppe paranteserne - det går også godt, så længe
> parametrene ikke er for sammensatte.
>
> Mit problem er bare, at jeg har svært ved at se, hvorfor det nogle
> gange er OK uden Call, mens det andre gange går galt. Jeg har haft
> funktioner, hvis opbygning var meget ens, men hvor den ene krævede
> Call, mens den anden ikke gjorde ..?
>
> Anyone?
>

Ved kald af en sub kan du bruge begge metoder - dvs. uden og med
paranteser. Bruger du paranteser skal du dog bruge "call" først - det
er ikke nødvendigt, hvis du undlader paranteserne.

Med funktioner skal du altid bruge paranteser.

call minSub(parameter1, parameter2)    eller -
   minSub parameter1, parameter2        eller

   minFunction(parameter1, parameter2).

Christian M. Nielsen (14-09-2003)
Kommentar
Fra : Christian M. Nielsen


Dato : 14-09-03 21:14




"Svend Pedersen" <seh_dk_vejle@yahoo.dk> wrote in message
news:Xns93F6DF8AC74F0sehdkvejleyahoodk@130.227.3.84...
>
> Med funktioner skal du altid bruge paranteser.
>
> call minSub(parameter1, parameter2) eller -
> minSub parameter1, parameter2 eller
>
> minFunction(parameter1, parameter2).

Hvad bruges parametre til?

--

Mvh / Regards
-=< Christian >=-
What capital has 164 letters in its name? See my web page to find out.
http://www.cmnielsen.dk ICQ: 25308942
"If you kneel at the fence by the priest, you get dog biscuits. Anna 6
years."



Jørn Andersen (14-09-2003)
Kommentar
Fra : Jørn Andersen


Dato : 14-09-03 22:26

On Sun, 14 Sep 2003 22:14:13 +0200, "Christian M. Nielsen"
<look_for_it@my.webpage> wrote:

>> minFunction(parameter1, parameter2).
>
>Hvad bruges parametre til?

De indbyggede funktioner i VBScript har parametre - fx en som de
fleste kender:
Replace(expression, find, replacewith)
(for nu at tage den korte udgave af den)

På samme måde kan man selv lave funktioner, der har (eller ikke har)
parametre - dvs. man fodrer dem med noget input (parametrene), og de
leverer et eller andet output.

Hvis man har nogle rutiner, som man gentager i løbet af et script, kan
det ofte være en god idé at bruge funktioner i stedet.
Dels giver det ofte noget mere overskuelig kode, dels kan det ofte
være hurtigere at rette de samme ting ét sted frem for flere.

Se nogle enkle eksempler på html.dk:
<url: http://www.html.dk/tutorials/asp/lektion9.asp>

--
Jørn Andersen,
Brønshøj

Christian M. Nielsen (15-09-2003)
Kommentar
Fra : Christian M. Nielsen


Dato : 15-09-03 05:40

"Jørn Andersen" <jorn@jorna.dk> wrote in message
news:alm9mvogofkob3t01kmninrdctlm8o98b2@4ax.com...

> Hvis man har nogle rutiner, som man gentager i løbet af et script, kan
> det ofte være en god idé at bruge funktioner i stedet.
> Dels giver det ofte noget mere overskuelig kode, dels kan det ofte
> være hurtigere at rette de samme ting ét sted frem for flere.

ok

> Se nogle enkle eksempler på html.dk:
> <url: http://www.html.dk/tutorials/asp/lektion9.asp>

Er der nogen der har smartere eksempler? Jeg synes stadig jeg har lidt svært
ved at forestille mig hvornår det er meget lettere / smartere at bruge
argumenterne.
--

Mvh / Regards
-=< Christian >=-
What capital has 164 letters in its name? See my web page to find out.
http://www.cmnielsen.dk ICQ: 25308942
"If you kneel at the fence by the priest, you get dog biscuits. Anna 6
years."





Peter Lykkegaard (15-09-2003)
Kommentar
Fra : Peter Lykkegaard


Dato : 15-09-03 09:34


"Christian M. Nielsen" <look_for_it@my.webpage> wrote in message
news:bk3frd$fu1$1@sunsite.dk...
>
> Er der nogen der har smartere eksempler? Jeg synes stadig jeg har lidt
svært
> ved at forestille mig hvornår det er meget lettere / smartere at bruge
> argumenterne.

Ok, nogle eksempler

Lad os sige at du har en global variabel fx mstrConnection du bruger i dine
forskellige funktioner der lave databaseopslag
Du undlader at bruge argumenter og det fungerer forsåvidt ganske udmærket

Lad os så sige at du laver en nyt site hvor din globale variabel pludselig
hedder mstrConn
Hvad der så sker i din funktion er lidt afhængig af om du bruger Option
Explicit eller ej

Believe it or not - jeg har selv været igennem den tur på den hårde måde

Går du skridtet videre og begynder at lave tingene modulopbygget og fx har
dine databasekald indkaplset i et ActiveX komponent så skal du overføre
variablen (mstrConnection) til komponenten

Også hvis du har dine funktioner i includefiler så er det særdeles rart ikke
at være afhængig af navgivningen af dine variabler på de enkelte sider

mvh/Peter Lykkegaard



Søg
Reklame
Statistik
Spørgsmål : 177560
Tips : 31968
Nyheder : 719565
Indlæg : 6408944
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste