Avatar billede gramil Novice
23. maj 2006 - 23:04 Der er 35 kommentarer og
1 løsning

VBScript runtime error

Er der nogle der kan gennemskue hvad der er galt her? Jeg får følgende fejlmeddelelse:


Microsoft VBScript runtime error '800a01c2'

Wrong number of arguments or invalid property assignment: 'GetMenuTree'

/cmsadmin/Site/AllView/avtree.asp, line 40


Linie 40 ser sådan ud:


vMenuTree = GetMenuTree("-1", conn, true, "goread.asp?xID=", "goviewmodule.asp?xID=")
Avatar billede softspot Forsker
23. maj 2006 - 23:10 #1
Hvordan ser selve funktionsdefinitionen til GetMenuTree ud?

Passer antallet af parametre i definitionen med det antal du forsøger at sende med til funktionen?
Avatar billede gramil Novice
23. maj 2006 - 23:16 #2
Jeg ved det ærlig talt ikke. Har ikke meget styr på det. Er ved at rette vores hjemmeside til efter den er blevet flyttet til surftown. Og det er på den langsommelige måde. Kan jeg på nogen måde give dig informationer nok til at du kan hjælpe. Eller er jeg bare ude på for dybt vand.
Avatar billede softspot Forsker
23. maj 2006 - 23:24 #3
Det kommer lidt an på hvilke sideeffekter der opstår under læsning af denne udfordring :)

Hvis du i første omgang kan lave en søgning i alle dine asp-sider for at se om du kan finde den funktion, så ville det være en stor hjælp (du kan evt. se om du har inkluderet den fil som funktionen er defineret i.
Avatar billede gramil Novice
23. maj 2006 - 23:30 #4
Kunne det have noget med den her fil at gøre:

<%

Function GetMenuTree( inParentDocId, inConn, inTarget, inFirst )
   
    Dim inRs, strSQL, strName, strID, strTemplate, bolFirst, strResult, mbl
    Set inRs = Server.CreateObject("ADODB.Recordset")
   
    mbl=Session("Member_Level")
    If Not IsNumeric(mbl) Or mbl = "" Then
        mbl=0
    End If
   
    vLangId = CStr(Session("contentLanguage"))
    vDBType = lCase( GetDb( inConn ) )
   
    strDate = "'" & Now() & "'"
    If vDBType = "access" Then strDate = "DateValue(" & strDate & ")"
   
    If inParentDocId = "-1" Then inParentDocId = vRoot
    strSQL = "SELECT DocumentId, Documents.DocName AS systemName, DocumentLanguages.DocName AS realName, "
    strSQL=strSQL & "Documents.ModuleId, Documents.SortOrder, Documents.ParentId, Documents.TemplateURL "
    strSQL=strSQL & " FROM Documents LEFT JOIN DocumentLanguages ON Documents.DocumentId=DocumentLanguages.DocId "
    strSQL=strSQL & " WHERE ParentId=" & inParentDocId
    strSQL=strSQL & "    AND (LangId=" & vLangId & " Or LangId Is Null) "
    strSQL=strSQL & "    AND SecLevel <= " & mbl
    strSQL=strSQL & "    AND LangStatus = 5 "
    strSQL=strSQL & "    AND PublishDate < " & strDate
    strSQL=strSQL & "    AND ExpiresDate > " & strDate
    strSQL=strSQL & " GROUP BY DocumentId, Documents.DocName, DocumentLanguages.DocName, Documents.ModuleId, "
    strSQL=strSQL & "            Documents.SortOrder, Documents.ParentId, Documents.TemplateURL "
    strSQL=strSQL & " ORDER BY Documents.SortOrder, DocumentLanguages.DocName, Documents.DocName "
   
    inRs.Open strSQL, inConn
    bolFirst = (Not inRs.BOF And Not inRs.EOF And inFirst)
   
    If bolFirst Then
        If inParentDocId <> vRoot Then
            vRoot = inParentDocId
        End If
        strResult = strResult & vbTab & "<script type=""text/javascript"" src=""" & vMenuTreeRoot & "dtree.js""></script>" & vbNewLine
        strResult = strResult & vbTab & "<link rel=""StyleSheet"" href=""" & vMenuTreeRoot & "dtree.css"" type=""text/css"" />" & vbNewLine
        strResult = strResult & vbTab & "<script type=""text/javascript"">" & vbNewLine
        strResult = strResult & vbTab & "var imgPath = """ & vMenuTreeRoot & """;" & vbNewLine
        strResult = strResult & vbTab & "var d = new dTree('d');" & vbNewLine
        strResult = strResult & vbTab & "d.add(" & vRoot & ",-1,'');" & vbNewLine
    End If
   
    While Not inRs.EOF
        strID = "" & inRs("DocumentId").Value
        strName = TransformName( inRs("systemName").Value, inRs("realName").Value )
        strTitle = strName
        vMenuTreeReadURL = "read.asp?docid=" & strID
        strTarget = inTarget
        strIcon = "null"
        strIconOpen = "null"
        strOpen = "null"
       
        If inRs("ModuleId").Value > 0 Then
            strIcon = "d.icon.module"
            vMenuTreeReadURL = inModuleURL
        End If
        If inParentDocId = 0 Then
            strIcon = "d.icon.toplevel"
            strIconOpen = "d.icon.toplevelOpen"
        End If
        If vTrash = strID Then
            strIcon = "d.icon.trash"
            strIconOpen = "d.icon.trash"
        End If
       
        If inRs("ModuleId").Value > 0 Then
            vMenuTreeReadURL = inRs("TemplateURL").Value
           
            If Not SiteUseFrames Then
                vMenuTreeReadURL = "default.asp?Docid=1&Tpl=" & vMenuTreeReadURL
            End If
           
            If InStr(vMenuTreeReadURL, "?") > 0 Then
                vMenuTreeReadURL = vMenuTreeReadURL & "&"
            Else
                vMenuTreeReadURL = vMenuTreeReadURL & "?"
            End If
            vMenuTreeReadURL = vMenuTreeReadURL & "lang="&vLangId
        End If
       
        '(id, parentId, name, url, title, target, icon, iconOpen, open)
        strResult = strResult & vbTab & "d.add("
        strResult = strResult & strID & ","
        strResult = strResult & inParentDocId & ",'"
        strResult = strResult & strName & "','"
        strResult = strResult & vMenuTreeReadURL & "','"
        strResult = strResult & strTitle & "',"
        strResult = strResult & strTarget
        strResult = strResult & ");" & vbNewLine
                       
        strResult = strResult & GetMenuTree( strID, inConn, inTarget, false )
        inRs.MoveNext
    Wend
   
    If bolFirst Then strResult = strResult & vbTab & "</script>" & vbNewLine
   
    GetMenuTree = strResult
   
    inRs.Close
    Set inRs = Nothing

End Function

Function GetRoot( inConn )
    Dim rootRS, SQL

    Set rootRS = Server.CreateObject("ADODB.Recordset")
    SQL = "SELECT SettingValue FROM cmsSettings WHERE SettingKey='SiteRootID'"

    rootRS.Open SQL, inConn
    If rootRS.EOF Then
        GetRoot = ""
    Else
        GetRoot = rootRS("SettingValue").value
    End If
    rootRS.Close

    Set rootRS = Nothing
   
End Function

Function GetDb( inConn )
    Dim rootRS, SQL

    Set rootRS = Server.CreateObject("ADODB.Recordset")
    SQL = "SELECT SettingValue FROM cmsSettings WHERE SettingKey='DatabaseType'"

    rootRS.Open SQL, inConn
    If rootRS.EOF Then
        GetDb = ""
    Else
        GetDb = rootRS("SettingValue").value
    End If
    rootRS.Close

    Set rootRS = Nothing
   
End Function

Function TransformName( strSystemName, strRealName )
    Dim theName
   
    theName= "" & strRealName
    If Len(theName) < 1 Then theName = "" & strSystemName
    If Len(theName) < 1 Then theName = "&nbsp;"
   
    TransformName=Replace(theName, "'", "\'")
End Function

Sub PrintMenu()
    If vMenuTree <> "" Then
        Response.Write "<script type=""text/javascript"">document.write(d);</script>"
    End If
End Sub

Function GetDStatus(dID, inConn, vLangId)
   
    Dim strSQL, myRs
    strSQL =        "SELECT Documents.PublishCh1, Documents.PublishCh2, Documents.PublishCh3, "
    strSQL=strSQL & "    DocumentLanguages.ActiveRevisionStatus "
    strSQL=strSQL & "FROM Documents, DocumentLanguages "
    strSQL=strSQL & "WHERE DocumentId = DocId AND LangId = " & vLangId
    strSQL=strSQL & "    AND DocId = " & dID
   
    Set myRs = Server.CreateObject("ADODB.Recordset")
    myRs.Open strSQL, inConn
    If Not myRs.EOF And Not myRs.BOF Then
        GetDStatus=    "<font color=\'#008080\'>&nbsp;&nbsp;(" & dID & ":" & myRs("ActiveRevisionStatus").Value & ":" & _
                    cPx(myRs("PublishCh1").Value, 1) & _
                    cPx(myRs("PublishCh2").Value, 2) & _
                    cPx(myRs("PublishCh3").Value, 3) & _
                    ")</font>"
    End If
    myRs.Close
    Set myRs = Nothing
   
End Function

Function cPx(vStatus, pg)
    If vStatus = 1 Then
        cPx = ""&pg
    Else
        cPx = ""
    End IF
End Function   
%>
Avatar billede softspot Forsker
24. maj 2006 - 01:13 #5
Ja, f.eks. - og der kan man se at funktionen kun tager 4 parametre, hvor du forsøger at stoppe 5 ned i den... det går efter min bedste overbevisning ikke :)
Avatar billede gramil Novice
27. maj 2006 - 20:56 #6
Det er bare underligt at det har virker før. Da vi havde en anden internetudbyder. Men hvorom alt er, så aner jeg ikke hvad jeg skal gribe og gøre i, for at løse problemet. Er der mulighed for hjælp, eller er det for omfattende et problem?
Avatar billede softspot Forsker
27. maj 2006 - 23:35 #7
For mig ser det ud til at den 3. parameter i kaldet ikke passer til noget i parameterlisten af definitionen af GetMenuTree. Jeg ville derfor prøve at fjerne den i kaldet og se hvad der sker.

Hvorfor det har fungeret hos jeres tidligere udbyder er mig en gåde, for parameterlisten passer ikke med definitionen og det har jeg svært ved at se skulle fungere hos nogen udbyder (hvis altså det er den samme implementation af VBScript der bruges begge steder.

Jeg tror altså der er sket en eller anden udvikling af modulet som af en eller anden årsag ikke er kommet med i den kode du sidder med. Det er bare et gæt da jeg i sagens natur ikke har andet en det kode du har vist mig, at danne mine indtryk efter...
Avatar billede gramil Novice
28. maj 2006 - 22:52 #8
Så fjernede jeg den.... og får så denne fejl:

Microsoft JET Database Engine error '80040e14'

Syntax error (missing operator) in query expression 'ParentId= AND (LangId=1 Or LangId Is Null) AND SecLevel <= 0 AND LangStatus = 5 AND PublishDate < DateValue('28-05-2006 22:50:13') AND ExpiresDate > DateValue('28-05-2006 22:50:13')'.

/GlobalResources/Scripts/dtree/_dtree_inc.asp, line 33


Linie 33 i _dtree_inc.asp er følgende:

inRs.Open strSQL, inConn
Avatar billede softspot Forsker
28. maj 2006 - 22:58 #9
Hvordan ser kaldet til funktionen nu ud, for det lader til at der ikke er noget indhold i den første parameter længere (i din oprindelige kode var værdien "-1")...?
Avatar billede gramil Novice
28. maj 2006 - 23:02 #10
vMenuTree = GetMenuTree("-1", conn, "goread.asp?xID=", "goviewmodule.asp?xID=")
Avatar billede gramil Novice
28. maj 2006 - 23:04 #11
Og her er linierne over linie 33....

If inParentDocId = "-1" Then inParentDocId = vRoot
    strSQL = "SELECT DocumentId, Documents.DocName AS systemName, DocumentLanguages.DocName AS realName, "
    strSQL=strSQL & "Documents.ModuleId, Documents.SortOrder, Documents.ParentId, Documents.TemplateURL "
    strSQL=strSQL & " FROM Documents LEFT JOIN DocumentLanguages ON Documents.DocumentId=DocumentLanguages.DocId "
    strSQL=strSQL & " WHERE ParentId=" & inParentDocId
    strSQL=strSQL & "    AND (LangId=" & vLangId & " Or LangId Is Null) "
    strSQL=strSQL & "    AND SecLevel <= " & mbl
    strSQL=strSQL & "    AND LangStatus = 5 "
    strSQL=strSQL & "    AND PublishDate < " & strDate
    strSQL=strSQL & "    AND ExpiresDate > " & strDate
    strSQL=strSQL & " GROUP BY DocumentId, Documents.DocName, DocumentLanguages.DocName, Documents.ModuleId, "
    strSQL=strSQL & "            Documents.SortOrder, Documents.ParentId, Documents.TemplateURL "
    strSQL=strSQL & " ORDER BY Documents.SortOrder, DocumentLanguages.DocName, Documents.DocName "
Avatar billede softspot Forsker
28. maj 2006 - 23:08 #12
Det lader til at vRoot er en global variabel som mangler at få en valid værdi (som peger på rodelementet i dine data's træ). Kan du finde den og kan du finde ud af hvad der skal til for at du kan hente rodelementer - så kan du nok også finde ud af hvad der skal til for at løse dette nye problem... :)
Avatar billede gramil Novice
28. maj 2006 - 23:25 #13
Aaargh og hulk... Hvorfor, hvorfor, hvorfor....
Jeg er fuldstændig blank hvad det her angår... derfor anskaffede vi et CMS-system. Jeg har trods det fået løst alle problemer indtil nu. Og så står jeg altså bare tilbage med dette: Det er selve: Træstrukturen i administrationsdelen der mangler og det er jo nok det mest essetielle på hele hjemmesiden. Der opretter, retter og sletter vi siderne... Jeg må jo prøve at finde ud af hvor denne vroot er defineret.. Havde bare lige brug for at komme af med lidt galde....
Mange tak for din store tålmodighed.
Avatar billede softspot Forsker
28. maj 2006 - 23:31 #14
Det skal du ikke være ked af - problemer/udfordringer er til for at blive løst/taget op... en ny rask søgning skal nok afsløre hvor den root-variabel befinder sig og et hurtigt kig i databasen vil nok hurtigt afsløre hvilken værdi du skal bruge for at referere roden. Ofte er det faktisk -1, så du kan da starte med at udkommentere den if-sætning som overskriver inParentDocId-variablen med vRoot, altså denne linie (ligen unden SQL-sætningen):

If inParentDocId = "-1" Then inParentDocId = vRoot
Avatar billede gramil Novice
28. maj 2006 - 23:43 #15
Udkommentere???
Avatar billede softspot Forsker
28. maj 2006 - 23:46 #16
Hæh! Ja, det er sådan en udviklerterm ;-)

Det betyder såmænd bare at du skal sætte en apostrof i starten af linien og dermed gøre linien til en kommentar i stedet for en sætning som bliver fortolket af VBScript-fortolkeren. Det gøres ret let, således:

'If inParentDocId = "-1" Then inParentDocId = vRoot
Avatar billede gramil Novice
28. maj 2006 - 23:47 #17
Her er de første linier i _tree_inc.asp (prøv at se linie 8 - det er den med vroot=0)

<%

Function GetMenuTree( inParentDocId, inConn, showStatus, inURL, inModuleURL )
   
    Dim inRs, strSQL, strName, strID, strTemplate, bolFirst, strResult
    Set inRs = Server.CreateObject("ADODB.Recordset")
   
    vRoot=0
Avatar billede softspot Forsker
28. maj 2006 - 23:51 #18
Hooov! Det er ikke den samme kode som du postede i dit post fra 23/05-2006 23:30:39!?

Hvor kom den der version fra?
Avatar billede softspot Forsker
28. maj 2006 - 23:52 #19
Den anden fil hed _dtree_inc.asp og ikke _tree_inc.asp... skal vi lige blive enige om hvilken en af dem vi bruger...?
Avatar billede gramil Novice
29. maj 2006 - 00:11 #20
Sorry... Det er fordi der faktisk ligger to filer med samme navn i to forskellige biblioteker:

Den ene ligger i cmsadmin/site/allview/dtree

Den anden ligger i globalresources/scripts/dtree

Jeg har udkommenteret begge med først da jeg udkommenterede den i globalresources skete der noget. Da fik jeg en ny fejlmeddelelse:

Microsoft VBScript runtime error '800a000d'

Type mismatch: 'inFirst'

/GlobalResources/Scripts/dtree/_dtree_inc.asp, line 34


Og filen _dtree_inc.asp i Globalresources ser sådan ud:

<%

Function GetMenuTree( inParentDocId, inConn, inTarget, inFirst )
   
    Dim inRs, strSQL, strName, strID, strTemplate, bolFirst, strResult, mbl
    Set inRs = Server.CreateObject("ADODB.Recordset")
   
    mbl=Session("Member_Level")
    If Not IsNumeric(mbl) Or mbl = "" Then
        mbl=0
    End If
   
    vLangId = CStr(Session("contentLanguage"))
    vDBType = lCase( GetDb( inConn ) )
   
    strDate = "'" & Now() & "'"
    If vDBType = "access" Then strDate = "DateValue(" & strDate & ")"
   
    'If inParentDocId = "-1" Then inParentDocId = vRoot
    strSQL = "SELECT DocumentId, Documents.DocName AS systemName, DocumentLanguages.DocName AS realName, "
    strSQL=strSQL & "Documents.ModuleId, Documents.SortOrder, Documents.ParentId, Documents.TemplateURL "
    strSQL=strSQL & " FROM Documents LEFT JOIN DocumentLanguages ON Documents.DocumentId=DocumentLanguages.DocId "
    strSQL=strSQL & " WHERE ParentId=" & inParentDocId
    strSQL=strSQL & "    AND (LangId=" & vLangId & " Or LangId Is Null) "
    strSQL=strSQL & "    AND SecLevel <= " & mbl
    strSQL=strSQL & "    AND LangStatus = 5 "
    strSQL=strSQL & "    AND PublishDate < " & strDate
    strSQL=strSQL & "    AND ExpiresDate > " & strDate
    strSQL=strSQL & " GROUP BY DocumentId, Documents.DocName, DocumentLanguages.DocName, Documents.ModuleId, "
    strSQL=strSQL & "            Documents.SortOrder, Documents.ParentId, Documents.TemplateURL "
    strSQL=strSQL & " ORDER BY Documents.SortOrder, DocumentLanguages.DocName, Documents.DocName "
   
    inRs.Open strSQL, inConn
    bolFirst = (Not inRs.BOF And Not inRs.EOF And inFirst)
   
    If bolFirst Then
        If inParentDocId <> vRoot Then
            vRoot = inParentDocId
        End If
        strResult = strResult & vbTab & "<script type=""text/javascript"" src=""" & vMenuTreeRoot & "dtree.js""></script>" & vbNewLine
        strResult = strResult & vbTab & "<link rel=""StyleSheet"" href=""" & vMenuTreeRoot & "dtree.css"" type=""text/css"" />" & vbNewLine
        strResult = strResult & vbTab & "<script type=""text/javascript"">" & vbNewLine
        strResult = strResult & vbTab & "var imgPath = """ & vMenuTreeRoot & """;" & vbNewLine
        strResult = strResult & vbTab & "var d = new dTree('d');" & vbNewLine
        strResult = strResult & vbTab & "d.add(" & vRoot & ",-1,'');" & vbNewLine
    End If
   
    While Not inRs.EOF
        strID = "" & inRs("DocumentId").Value
        strName = TransformName( inRs("systemName").Value, inRs("realName").Value )
        strTitle = strName
        vMenuTreeReadURL = "read.asp?docid=" & strID
        strTarget = inTarget
        strIcon = "null"
        strIconOpen = "null"
        strOpen = "null"
       
        If inRs("ModuleId").Value > 0 Then
            strIcon = "d.icon.module"
            vMenuTreeReadURL = inModuleURL
        End If
        If inParentDocId = 0 Then
            strIcon = "d.icon.toplevel"
            strIconOpen = "d.icon.toplevelOpen"
        End If
        If vTrash = strID Then
            strIcon = "d.icon.trash"
            strIconOpen = "d.icon.trash"
        End If
       
        If inRs("ModuleId").Value > 0 Then
            vMenuTreeReadURL = inRs("TemplateURL").Value
           
            If Not SiteUseFrames Then
                vMenuTreeReadURL = "default.asp?Docid=1&Tpl=" & vMenuTreeReadURL
            End If
           
            If InStr(vMenuTreeReadURL, "?") > 0 Then
                vMenuTreeReadURL = vMenuTreeReadURL & "&"
            Else
                vMenuTreeReadURL = vMenuTreeReadURL & "?"
            End If
            vMenuTreeReadURL = vMenuTreeReadURL & "lang="&vLangId
        End If
       
        '(id, parentId, name, url, title, target, icon, iconOpen, open)
        strResult = strResult & vbTab & "d.add("
        strResult = strResult & strID & ","
        strResult = strResult & inParentDocId & ",'"
        strResult = strResult & strName & "','"
        strResult = strResult & vMenuTreeReadURL & "','"
        strResult = strResult & strTitle & "',"
        strResult = strResult & strTarget
        strResult = strResult & ");" & vbNewLine
                       
        strResult = strResult & GetMenuTree( strID, inConn, inTarget, false )
        inRs.MoveNext
    Wend
   
    If bolFirst Then strResult = strResult & vbTab & "</script>" & vbNewLine
   
    GetMenuTree = strResult
   
    inRs.Close
    Set inRs = Nothing

End Function

Function GetRoot( inConn )
    Dim rootRS, SQL

    Set rootRS = Server.CreateObject("ADODB.Recordset")
    SQL = "SELECT SettingValue FROM cmsSettings WHERE SettingKey='SiteRootID'"

    rootRS.Open SQL, inConn
    If rootRS.EOF Then
        GetRoot = ""
    Else
        GetRoot = rootRS("SettingValue").value
    End If
    rootRS.Close

    Set rootRS = Nothing
   
End Function

Function GetDb( inConn )
    Dim rootRS, SQL

    Set rootRS = Server.CreateObject("ADODB.Recordset")
    SQL = "SELECT SettingValue FROM cmsSettings WHERE SettingKey='DatabaseType'"

    rootRS.Open SQL, inConn
    If rootRS.EOF Then
        GetDb = ""
    Else
        GetDb = rootRS("SettingValue").value
    End If
    rootRS.Close

    Set rootRS = Nothing
   
End Function

Function TransformName( strSystemName, strRealName )
    Dim theName
   
    theName= "" & strRealName
    If Len(theName) < 1 Then theName = "" & strSystemName
    If Len(theName) < 1 Then theName = "&nbsp;"
   
    TransformName=Replace(theName, "'", "\'")
End Function

Sub PrintMenu()
    If vMenuTree <> "" Then
        Response.Write "<script type=""text/javascript"">document.write(d);</script>"
    End If
End Sub

Function GetDStatus(dID, inConn, vLangId)
   
    Dim strSQL, myRs
    strSQL =        "SELECT Documents.PublishCh1, Documents.PublishCh2, Documents.PublishCh3, "
    strSQL=strSQL & "    DocumentLanguages.ActiveRevisionStatus "
    strSQL=strSQL & "FROM Documents, DocumentLanguages "
    strSQL=strSQL & "WHERE DocumentId = DocId AND LangId = " & vLangId
    strSQL=strSQL & "    AND DocId = " & dID
   
    Set myRs = Server.CreateObject("ADODB.Recordset")
    myRs.Open strSQL, inConn
    If Not myRs.EOF And Not myRs.BOF Then
        GetDStatus=    "<font color=\'#008080\'>&nbsp;&nbsp;(" & dID & ":" & myRs("ActiveRevisionStatus").Value & ":" & _
                    cPx(myRs("PublishCh1").Value, 1) & _
                    cPx(myRs("PublishCh2").Value, 2) & _
                    cPx(myRs("PublishCh3").Value, 3) & _
                    ")</font>"
    End If
    myRs.Close
    Set myRs = Nothing
   
End Function

Function cPx(vStatus, pg)
    If vStatus = 1 Then
        cPx = ""&pg
    Else
        cPx = ""
    End IF
End Function   
%>
Avatar billede gramil Novice
29. maj 2006 - 00:12 #21
Det her er linie 34:

bolFirst = (Not inRs.BOF And Not inRs.EOF And inFirst)
Avatar billede gramil Novice
29. maj 2006 - 00:14 #22
Og de hedder det samme. Det var mig der skrev forkert
Avatar billede softspot Forsker
29. maj 2006 - 00:17 #23
OK, fair nok, men så prøv at ændre denne linie:

    'If inParentDocId = "-1" Then inParentDocId = vRoot

til:

    If inParentDocId = "-1" Then inParentDocId = 0

altså indkommentere (det modsatte af udkommentere ;-)) linien og udskift vRoot med værdien 0 (nul). Det lader til at 0 bliver brugt i den anden fil og derfor kunne man fristes til at tro, at det er den værdi der angiver at et element ligger i roden...
Avatar billede softspot Forsker
29. maj 2006 - 00:21 #24
Ved nærmere eftersyn er du nok nød til at få sat den variabel (vRoot) for den bruges senere i scriptet. Du skal derfor skrive:

    vRoot = 0
    If inParentDocId = "-1" Then inParentDocId = vRoot


i stedet for det jeg lige foreslog i sidste post...
Avatar billede gramil Novice
29. maj 2006 - 00:23 #25
Stadig denne fejlmeddelelse:

Microsoft VBScript runtime error '800a000d'

Type mismatch: 'inFirst'

/GlobalResources/Scripts/dtree/_dtree_inc.asp, line 34
Avatar billede softspot Forsker
29. maj 2006 - 00:32 #26
Det ser ud til at den sidste parameter i kaldet til GetMenuTree, skal være af typen boolean (true eller false) og den er i øjeblikket en streng, så du skal lige have ændret den i kaldet.

Hvad den betyder er lidt uklart, men jeg vil gætte på at det har noget med udgangspunktet for aflæsningen af træstrukturen at gøre og at den derfor skal være true (funktionen bliver kaldt rekursivt og de indlejrede kald til GetMenuTree kalder funktionen med false, hvilket jeg tolker som at det er underelementer til et eksisterende element)...
Avatar billede gramil Novice
29. maj 2006 - 00:42 #27
og så er vi tilbage:


rettede til: vMenuTree = GetMenuTree("-1", conn, "goread.asp?xID=", "goviewmodule.asp?xID=", true)

Men får så fejlen:
Microsoft VBScript runtime error '800a01c2'

Wrong number of arguments or invalid property assignment: 'GetMenuTree'

/cmsadmin/Site/AllView/avtree.asp, line 40
Avatar billede softspot Forsker
29. maj 2006 - 00:51 #28
Ja, men det skulle du ikke have gjort :)

Det var sådan jeg ville have dig til at gøre:

vMenuTree = GetMenuTree("-1", conn, "goread.asp?xID=", true)

Der er et eller andet med det oprindelige kald som ikke stemmer overens med den kode der kaldes. Det er som om de to versioner af _dtree_inc.asp ikke er synkroniseret med hinanden og at den kode du bruger, forventer at få fat i noget andet kode end det den rent faktisk får fat i...

Hvis dette forslag ikke fungerer, tror jeg det bliver svært for mig at hjælpe dig, da det virker som om der er lidt rod i systemet (eller noget jeg mangler at få at vide)...
Avatar billede gramil Novice
29. maj 2006 - 00:57 #29
Nu var der i hvert fald noget der virkede... Nu laver den ingen fejl, men jeg kan kun se overskriften.

Hjemmeside:

Siderne bliver ikke vist. Men det er da et skridt i den rigtige retning.
Avatar billede softspot Forsker
29. maj 2006 - 01:00 #30
Spørgsmålet er så om der skulle have stået

vMenuTree = GetMenuTree("-1", conn, "goviewmodule.asp?xID=", true)

i stedet for... :)
Avatar billede gramil Novice
29. maj 2006 - 01:10 #31
Nej, det giver det samme resultat. Men ved du hvad. Jeg har det efterhånden lidt dårligt med at bruge al din tid på det her. Og jeg er jo ikke til stor hjælp, da jeg ikke ved hvilke informationer du skal bruge. Måske jeg bare skal betale mig ud af det.
Avatar billede softspot Forsker
29. maj 2006 - 01:34 #32
Ja, jeg kan da se at det manglende overblik jeg sidder med, ikke giver særlig tilfredsstillende resultater, så det bliver nok svært for mig at hjælpe dig mere uden at det vil invovlere væsentlig mere indsigt i det du sidder og arbejder med... desværre :(

Jeg håber dog du finder en løsning på problemet - snart :)
Avatar billede gramil Novice
11. januar 2007 - 16:34 #33
Softspot.. kan du ikke lægge et svar her.. Er ved at lukke mine spørgsmål. Og du skal have noget for din tid.
Avatar billede softspot Forsker
11. januar 2007 - 17:33 #34
Det lyder godt - ked af at jeg ikke kunne hjælpe dig til en konkret løsning...
Avatar billede gramil Novice
11. januar 2007 - 18:58 #35
Ingen problem.. Du gjorde bestemt hvad du kunne.
Avatar billede softspot Forsker
11. januar 2007 - 22:15 #36
Tak for point :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester