Ik roep de 2 volgende functies achter elkaar aan:
Het probleem is dat de 2e functie zijn werkt niet doet als de eerste functie uitgevoerd wordt.
Zodra ik de DeleteAfspraak niet draai... werkt de update wel??
Ik snap der geen snars van.
Met de eerste functie delete ik dus een bepaald record.
Met de tweede voer ik een update uit aan de hand van een datum. De laatste invoerdatum wordt geselecteerd waarna deze op actueel wordt gezet. (zie code)
code:
1
2
| DeleteAfspraak(intDelID)
UpdateAfspraakActueel(intDelKlantID) |
Het probleem is dat de 2e functie zijn werkt niet doet als de eerste functie uitgevoerd wordt.
Zodra ik de DeleteAfspraak niet draai... werkt de update wel??
Ik snap der geen snars van.
Met de eerste functie delete ik dus een bepaald record.
Met de tweede voer ik een update uit aan de hand van een datum. De laatste invoerdatum wordt geselecteerd waarna deze op actueel wordt gezet. (zie code)
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
| Private Function DeleteAfspraak(ByVal varAfspraakID As Integer) As Boolean
'----------------------------------------------------------------------------------------
' Haal de connectionstring op uit de globale variable strGlobalDbConn
'----------------------------------------------------------------------------------------
Dim OleDbConn As New OleDb.OleDbConnection(Global.strGlobalDbConn)
'----------------------------------------------------------------------------------------
'----------------------------------------------------------------------------------------
Dim intAfspraakID As Integer = varAfspraakID
'----------------------------------------------------------------------------------------
' Maak een OleDbCmnd en een string om de gegevens in de database te plaatsen
'----------------------------------------------------------------------------------------
Dim OleDbCmnd1 As OleDb.OleDbCommand
Dim strSQLCmnd1 As String
strSQLCmnd1 = "DELETE FROM Tbl_Afspraak WHERE AfspraakID = @AfspraakID"
OleDbCmnd1 = New OleDb.OleDbCommand(strSQLCmnd1, OleDbConn)
OleDbCmnd1.Parameters.Add("@AfspraakID", OleDb.OleDbType.Integer).Value = intAfspraakID
'----------------------------------------------------------------------------------------
'----------------------------------------------------------------------------------------
'----------------------------------------------------------------------------------------
' Om te voorkomen dat een user een foutmelding krijgt bij een database fout, doe een
' Try. Als er iets fout gaat komt er een popup met daarin de informatie! En er
' wordt een FALSE geretourneerd.
'----------------------------------------------------------------------------------------
Try
' open de verbinding - voer query uit
OleDbConn.Open()
OleDbCmnd1.ExecuteNonQuery()
Return True
Catch Ex As Exception
Response.Write("<script>alert('" & Ex.Message & "')</script>")
'Return een false omdat er een fout is opgetreden
Return False
Finally
' sluit de verbinding
OleDbConn.Close()
End Try
End Function
Private Function UpdateAfspraakActueel(ByVal varKlantID As Integer) As Boolean
'----------------------------------------------------------------------------------------
' Haal de connectionstring op uit de globale variable strGlobalDbConn
'----------------------------------------------------------------------------------------
Dim OleDbConn As New OleDb.OleDbConnection(Global.strGlobalDbConn)
'----------------------------------------------------------------------------------------
'----------------------------------------------------------------------------------------
Dim intKlantID As Integer = varKlantID
'----------------------------------------------------------------------------------------
' Maak een OleDbCmnd en een string om de gegevens in de database te plaatsen
'----------------------------------------------------------------------------------------
Dim OleDbCmnd1 As OleDb.OleDbCommand
Dim strSQLCmnd1 As String
strSQLCmnd1 = "UPDATE Tbl_Afspraak AS t1 SET t1.AfspraakActueel = @AfspraakActueel WHERE t1.AfspraakKlantID= @AfspraakKlantID AND t1.AfspraakInvoer IN (SELECT Max(t2.AfspraakInvoer) FROM Tbl_Afspraak AS t2)"
OleDbCmnd1 = New OleDb.OleDbCommand(strSQLCmnd1, OleDbConn)
OleDbCmnd1.Parameters.Add("@AfspraakActueel", OleDb.OleDbType.Boolean).Value = True
OleDbCmnd1.Parameters.Add("@AfspraakKlantID", OleDb.OleDbType.Integer).Value = intKlantID
'----------------------------------------------------------------------------------------
'----------------------------------------------------------------------------------------
'----------------------------------------------------------------------------------------
' Om te voorkomen dat een user een foutmelding krijgt bij een database fout, doe een
' Try. Als er iets fout gaat komt er een popup met daarin de informatie! En er
' wordt een FALSE geretourneerd.
'----------------------------------------------------------------------------------------
Try
' open de verbinding - voer query uit
OleDbConn.Open()
Response.Write("___" & OleDbCmnd1.ExecuteNonQuery())
Return True
Catch Ex As Exception
Response.Write("<script>alert('" & Ex.Message & "')</script>")
'Return een false omdat er een fout is opgetreden
Return False
Finally
' sluit de verbinding
OleDbConn.Close()
End Try
End Function |