Οπως ειπα η συνδεση με την βαση εγινε και δουλευει νερακι.....επισης εβαλα το connection sting στο web.config,εβαλα και καποιες stored procedures για την Select και αργοτερα θα βαλω και για την Update οπως ειπε ο Μαριος. Επισης με το πατημα του κουμπιου αλλαζω και την εικονα του button ωστε να δειχνει αν ειναι αναμμενο ή οχι. To θεμα ειναι οπως δειχνω και στην εικονα εχω 7 controls που παιρνουν τιμες απο 7 πινακες. Αυτο σημαινει οτι πρεπει να γραψω 7 φορες τις τρεις συναρτησεις και να ανοιγω-κλεινω 7 φορες την connection στην βαση νομιζω οτι προγραμματιστικα ειναι λαθος. Δεν θα μπορουσα με να κανω τουλαχιστο την αρχικοποιηση των buttons στην Page_load καπως πιο καλα????
Public SQLconn As New SqlConnection(ConfigurationManager.ConnectionStrings("TestConnectionString").ToString())
Sub Page_Load(ByVal Sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
SQLconn.Open()
Dim SelectCmd1 As New SqlCommand("prodiakoptis1", SQLconn)
SelectCmd1.CommandType = CommandType.StoredProcedure
Dim result1 As Boolean
Dim myDataReader1 As SqlDataReader
myDataReader1 = SelectCmd1.ExecuteReader()
myDataReader1.Read()
result1 = myDataReader1.GetBoolean(0)
SQLconn.Close()
SQLconn.Open()
Dim SelectCmd2 As New SqlCommand("prodiakoptis2", SQLconn)
SelectCmd2.CommandType = CommandType.StoredProcedure
Dim result2 As Boolean
Dim myDataReader2 As SqlDataReader
myDataReader2 = SelectCmd2.ExecuteReader()
myDataReader2.Read()
result2 = myDataReader2.GetBoolean(0)
SQLconn.Close()
SQLconn.Open()
Dim SelectCmd3 As New SqlCommand("prodiakoptis3", SQLconn)
SelectCmd3.CommandType = CommandType.StoredProcedure
Dim result3 As Boolean
Dim myDataReader3 As SqlDataReader
myDataReader3 = SelectCmd3.ExecuteReader()
myDataReader3.Read()
result3 = myDataReader3.GetBoolean(0)
SQLconn.Close()
ChangeButton1(result1)
ChangeButton2(result2)
ChangeButton3(result3)
End Sub
Sub ChangeButton1(ByVal Status As Boolean)
If Status Then
Label1.Text =
"ON"
OnOff1.Style.Value =
"background-image: url(../ImgContr/1.png);"
Else
Label1.Text =
"OFF"
OnOff1.Style.Value =
"background-image: url(../ImgContr/2.png);"
End If
End Sub
Sub OnOff_Click1(ByVal Sender As Object, ByVal e As System.EventArgs)
Dim updateCMD As SqlCommand
Dim query As String
If Label1.Text = "ON" Then
query =
"UPDATE [diakoptis1] SET [rawvalue] = 'False' WHERE [device] = 'channel1'"
ChangeButton1(0)
Else
query =
"UPDATE [diakoptis1] SET [rawvalue] = 'True' WHERE [device] = 'channel1'"
ChangeButton1(1)
End If
updateCMD =
New SqlCommand(query, SQLconn)
updateCMD.CommandType = CommandType.Text
SQLconn.Open()
updateCMD.ExecuteNonQuery()
SQLconn.Close()
End Sub
Sub ChangeButton2(ByVal Status As Boolean)
If Status Then
Label2.Text =
"ON"
OnOff2.Style.Value =
"background-image: url(../ImgContr/1.png);"
Else
Label2.Text =
"OFF"
OnOff2.Style.Value =
"background-image: url(../ImgContr/2.png);"
End If
End Sub
Sub OnOff_Click2(ByVal Sender As Object, ByVal e As System.EventArgs)
Dim updateCMD As SqlCommand
Dim query As String
If Label2.Text = "ON" Then
query =
"UPDATE [diakoptis2] SET [rawvalue] = 'False' WHERE [device] = 'channel1'"
ChangeButton2(0)
Else
query =
"UPDATE [diakoptis2] SET [rawvalue] = 'True' WHERE [device] = 'channel1'"
ChangeButton2(1)
End If
updateCMD =
New SqlCommand(query, SQLconn)
updateCMD.CommandType = CommandType.Text
SQLconn.Open()
updateCMD.ExecuteNonQuery()
SQLconn.Close()
End Sub
Sub ChangeButton3(ByVal Status As Boolean)
If Status Then
Label3.Text =
"ON"
OnOff3.Style.Value =
"background-image: url(../ImgContr/1.png);"
Else
Label3.Text =
"OFF"
OnOff3.Style.Value =
"background-image: url(../ImgContr/2.png);"
End If
End Sub
Sub OnOff_Click3(ByVal Sender As Object, ByVal e As System.EventArgs)
Dim updateCMD As SqlCommand
Dim query As String
If Label3.Text = "ON" Then
query =
"UPDATE [diakoptis3] SET [rawvalue] = 'False' WHERE [device] = 'channel1'"
ChangeButton3(0)
Else
query =
"UPDATE [diakoptis3] SET [rawvalue] = 'True' WHERE [device] = 'channel1'"
ChangeButton3(1)
End If
updateCMD =
New SqlCommand(query, SQLconn)
updateCMD.CommandType = CommandType.Text
SQLconn.Open()
updateCMD.ExecuteNonQuery()
SQLconn.Close()
End Sub
Και μια προεσκοπιση για το τι ακριβως κανω:
