Page 1 of 1

probleem met script

Posted: Mon Jul 25, 2011 8:58 pm
by Willem4ever
Ik ben geen vb scripter en homeseer is vaag en foutief met de regelnummers, wat doe ik fout of kan dit helemaal niet met vb. De functies die ik gebruik zijn van de MySQL dotnet connector. Ik probeer een record uit een mysql database te lezen.

using MySql.Data
using MySql.Data.MySqlClient

Sub Main(Optional ByVal pParms As String = "")
Dim mailfrom As String = "jan@email.com"
Dim mailto As String = "piet@email.com"
Dim strMessage As String

String connStr = "server=xxx;user=xxx;database=xxx;port=3306;password=xxx;";
MySqlConnection conn = new MySqlConnection(connStr);
conn.Open();
String sql = "SELECT datetime,reader,access,status FROM Country re order by counter desc limit 1";

MySqlCommand cmd = new MySqlCommand(sql, conn);
MySqlDataReader rdr = cmd.ExecuteReader();
while (rdr.Read())
{
strMessage = rdr[0] + " " +rdr[1] + " " +rdr[2] + " " +rdr[3];
hs.WriteLog("SQL",strMessage);
}

If strMessage <> "" Then
hs.SendEmail(mailto, mailfrom, "Alarm", strMessage)
Else
hs.WriteLog("EMAIL", "Info, Nothing read from database") 'Error
End If
End Sub

Re: probleem met script

Posted: Mon Jul 25, 2011 9:22 pm
by AshaiRey
Wat is de foutboodschap?
Dat zal vaak sneller helpen.

Re: probleem met script

Posted: Mon Jul 25, 2011 9:47 pm
by Willem4ever
Na het script vbscript achtig te hebben gemaakt heb ik nu deze melding, Script compile error: Type 'MySqlConnection' is not defined.on line 25. Dit lijkt iets met de namespaces te maken te hebben. Ik zal eea posten als het werkt !

Re: probleem met script

Posted: Mon Jul 25, 2011 10:27 pm
by Willem4ever
Settings.ini aangepast met de namespaces

[Settings]
ScriptingReferences=MySql.Data.MySqlClient;MySql.Data.dll;System.Data;System.Data.dll

System.Data.dll voor de zekerheid naar de HS directory gekopieerd, alhoewel ik niet zeker weet wie deze probeert te laden

Script compile error: Reference required to assembly 'System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' containing the base class 'System.Data.Common.DbConnection'. Add one to your project.on line 25

Re: [SOLVED] probleem met script

Posted: Mon Jul 25, 2011 11:49 pm
by Willem4ever
> Het werkt, scheel gekeken bij het scheiden van de scripting references moet natuurlijk een comma zijn. Deze setting hoort in de settings.ini thuis.

[Settings]
ScriptingReferences=MySql.Data.MySqlClient;MySql.Data.dll,System.Data;System.Data.dll

> En dan nog wat vb.net eigenschappen waar een C++/Objective-C/PHP/PERL programmer als ik meteen in trapt.

Imports System.Data
Imports MySql.Data.MySqlClient

Sub Main(Optional ByVal pParms As String = "")


Dim mailfrom As String = "xx@xx"
Dim mailto As String = "xx@xx"
Dim strMessage As String
Dim connStr As String
Dim sql As String
Dim conn As MySqlConnection
Dim cmd as MySqlCommand
Dim rdr as MySqlDataReader

connStr = "server=xxx;user=xx;database=xx;port=3306;password=xx;"
conn = new MySqlConnection(connStr)
conn.Open()
sql = "SELECT datetime,reader,access,owner FROM re,id WHERE respcode = ""BR"" and status=badge order by counter desc limit 1"

cmd = new MySqlCommand(sql, conn)
rdr = cmd.ExecuteReader()

While (rdr.Read())
strMessage = rdr.GetString(0) & " " & rdr.GetString(1) & " " & rdr.GetString(2) & " " & rdr.GetString(3)
hs.WriteLog("SQL",strMessage)
End While

If strMessage <> "" Then
hs.SendEmail(mailto, mailfrom, "Alarm", strMessage)
Else
hs.WriteLog("EMAIL", "Info, Nothing read from database") 'Error
End If

End Sub

Re: probleem met script

Posted: Tue Jul 26, 2011 10:27 am
by AshaiRey
Leuk he als je de oplossing zelf vind door het probleem aan een ander duidelijk te maken. :D

Ik ben blij dat het werkt.