Avatar billede jmc Nybegynder
12. august 2004 - 13:11 Der er 9 kommentarer

Den siger Object doesn't support named arguments?

Microsoft VBScript runtime error '800a01be'
Object doesn't support named arguments: 'Source'
/remind_me.asp, line 15


<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<%Session.LCID = 1030%>

<!--#include file="../produkter/web/Connections/web.asp" -->
<%
Dim rs_web2
Dim rs_web2_numRows


Set rs_web2 = Server.CreateObject("ADODB.Connection")
rs_web2.Open = MM_web_STRING

rs_web2.Source = "SELECT * FROM domains"
rs_web2.CursorType = 0
rs_web2.CursorLocation = 2
rs_web2.LockType = 1
rs_web2.Open()

rs_web2_numRows = 0
%>
<%
Dim Repeat1__numRows
Dim Repeat1__index

Repeat1__numRows = -1
Repeat1__index = 0
rs_web2_numRows = rs_web2_numRows + Repeat1__numRows
%>
<SCRIPT RUNAT=SERVER LANGUAGE=VBSCRIPT>                   
function DoDateTime(str, nNamedFormat, nLCID)               
    dim strRet                               
    dim nOldLCID                               
                                       
    strRet = str                               
    If (nLCID > -1) Then                           
        oldLCID = Session.LCID                       
    End If                                   
                                       
    On Error Resume Next                           
                                       
    If (nLCID > -1) Then                           
        Session.LCID = nLCID                       
    End If                                   
                                       
    If ((nLCID < 0) Or (Session.LCID = nLCID)) Then               
        strRet = FormatDateTime(str, nNamedFormat)           
    End If                                   
                                       
    If (nLCID > -1) Then                           
        Session.LCID = oldLCID                       
    End If                                   
                                       
    DoDateTime = strRet                           
End Function                                   
</SCRIPT>                                   
<html>
<head>
<title>remind me</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<% DIM nu
' nu = DoDateTime((now), 2, -1)
nu =  "01-01-2001" %>
<%
While ((Repeat1__numRows <> 0) AND (NOT rs_web2.EOF))
%>
<% udloeber = DoDateTime((rs_web2.Fields.Item("udloeber").Value), 2, -1) %>
<% if udloeber = nu then

'GEMMER AT MAILEN ER SENDT

'opdaterer produktet med hvilket katalog
SQL_d  = "UPDATE domains set fremsendt_mail = True WHERE domain_id = " & (rs_web2.Fields.Item("domain_id").Value)
'response.Write(SQL_d)
rs_web2.Execute (SQL_d)

' SENDER MAIL
    Set Mailer = Server.CreateObject("SMTPsvg.Mailer")
    Mailer.CharSet = 2
    Mailer.FromName  = "grem"
    Mailer.FromAddress= "root@grabit.dk"
    Mailer.RemoteHost = "relay.arm.com"
    Mailer.AddRecipient "ran", "r@g.dk"
    Mailer.Subject  = "Husk følgende!"

tekst = ""
linie = vbCrLf

tekst = tekst & rs_web2.Fields.Item("domain").Value

Mailer.BodyText  = tekst
if Mailer.SendMail then
end if

end if %>
<%
  Repeat1__index=Repeat1__index+1
  Repeat1__numRows=Repeat1__numRows-1
  rs_web2.MoveNext()
Wend
%>

</body>
</html>
<%
rs_web2.Close()
Set rs_web2 = Nothing
%>
Avatar billede eagleeye Praktikant
12. august 2004 - 13:18 #1
Du har fået blandet connection og recordset ind i samme variable navn i  dette styk kode:

Set rs_web2 = Server.CreateObject("ADODB.Connection")
rs_web2.Open = MM_web_STRING

rs_web2.Source = "SELECT * FROM domains"
rs_web2.CursorType = 0
rs_web2.CursorLocation = 2
rs_web2.LockType = 1
rs_web2.Open()


Prøv at gøre sådan her:

Set conn = Server.CreateObject("ADODB.Connection")
conn.Open MM_web_STRING
Set rs_web2 = Server.CreateObject("ADODB.Recordset")

Set rs.ActiveConnection = conn
rs_web2.Source = "SELECT * FROM domains"
rs_web2.CursorType = 0
rs_web2.CursorLocation = 2
rs_web2.LockType = 1
rs_web2.Open
Avatar billede eagleeye Praktikant
12. august 2004 - 13:19 #2
denne linje:
Set rs.ActiveConnection = conn

skulle være med rs_web2 som dit recordset hedder:
Set rs_web2.ActiveConnection = conn
Avatar billede ldanielsen Nybegynder
12. august 2004 - 13:28 #3
Du har et object der hedder rs_web2, og det er en ADODB.Connection.

Det du derefter skal have der et Recordset, og du forsøger såa at bruge det samme object, det går ikke.
Sådan vil jeg vælge at åbne et recordset:

Set Con = Server.CreateObject("ADODB.Connection")
Con.Open = MM_web_STRING

Set Com = Server.CreateObject("ADODB.Command")
Set Rec = Server.CreateObject("ADODB.Recordset")

Com.ActiveConnection = Con
Com.CommandText = "SELECT * FROM domains"
Rec.CursorType = 0
Rec.CursorLocation = 2
Rec.LockType = 1
Rec.Open Com


Og linien:
<% udloeber = DoDateTime((rs_web2.Fields.Item("udloeber").Value), 2, -1) %>
skal herefter være
<% udloeber = DoDateTime(Rec("udloeber"), 2, -1) %>

Så skal du lukke Rec igen med
Rec.Close

Og du skal lukke Con:
Con.Close

Og endelig skal du fjerne objekterne:

Set Con = Nothing
Set Com = Nothing
Set Rec = Nothing
Avatar billede jmc Nybegynder
12. august 2004 - 13:29 #4
Den siger:
Microsoft VBScript runtime error '800a01b6'
Object doesn't support this property or method: 'Execute'
remind_me.asp, line 81

jeg har rettet til:
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open MM_web_STRING
Set rs_web2 = Server.CreateObject("ADODB.Recordset")

Set rs.ActiveConnection = conn
rs_web2.Source = "SELECT * FROM domains"
rs_web2.CursorType = 0
rs_web2.CursorLocation = 2
rs_web2.LockType = 1
rs_web2.Open
Avatar billede ldanielsen Nybegynder
12. august 2004 - 13:29 #5
Hov, jeg var vist for længe om det svar, eagleeye's løsning er sikkert fin

I det hele taget ser det ud som om du skal sætte dig lidt bedre ind i ADO :o)
Avatar billede ldanielsen Nybegynder
12. august 2004 - 13:30 #6
Linie 81 skal nok sige Conn.Execute ... i stedet for rs_web2.Execute ..
Avatar billede jmc Nybegynder
12. august 2004 - 13:43 #7
takker, det hjalp! ;o)
Avatar billede jmc Nybegynder
18. august 2010 - 13:01 #8
Jeg kunne godt tænke mig at få denne her lukket.
Vil du have points så skriv det venligst, ellers så lukker jeg og snupper dem selv.
Jeg er ved at rydde op og der er mange jeg skal igennem, så det er begrænset hvor menget tid jeg kan bruge på hvert indlæg.
Avatar billede eagleeye Praktikant
08. september 2010 - 16:10 #9
Jg ved ikke om du mener mig men jeg kan da godt svare :-)
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