Ich habe eine Suchfunktion mit Suchkriterien in VB.Net programmiert. Nach der Eingabe eines Suchkriteriums wird das Ergebnis in DataGridView angezeigt. Die Anzeige funktioniert sehr schnell. Nur nach der Anzeige der Daten im DataGridView bleibt das Programm kurz hängen (Keine Rückmeldung, genau immer 15 Sekunden). Suche ich danach nochmal mit dem gleichen Suchkriterium funktioniert alles einwandfrei.
Habe ich das Programm längere Zeit nicht benutzt, passiert wieder das gleiche. Dieses Auftreten ist immer unregelmäßig.
Ich arbeite mit keinem typisierten Dataset
Es ist eine lokale Datenbank
Datenbank ist Access 2016
Programmiert mit Visual Studio 2019
Der Code ist in einer Form geschrieben. Habe es auch in ein Modul ausgelagert, gleiches Ergebnis.
Während die Form Keine Rückmeldung anzeigt habe ich Str + Pause gedrückt um den Punkt zu sehen wo er hängt.
Ich habe folgende Meldung erhalten:

Danke in Voraus
LEOGOLD
Habe ich das Programm längere Zeit nicht benutzt, passiert wieder das gleiche. Dieses Auftreten ist immer unregelmäßig.
Ich arbeite mit keinem typisierten Dataset
Es ist eine lokale Datenbank
Datenbank ist Access 2016
Programmiert mit Visual Studio 2019
Der Code ist in einer Form geschrieben. Habe es auch in ein Modul ausgelagert, gleiches Ergebnis.
Während die Form Keine Rückmeldung anzeigt habe ich Str + Pause gedrückt um den Punkt zu sehen wo er hängt.
Ich habe folgende Meldung erhalten:
VB.NET-Quellcode
- Private Function FncSuchen_IV() As Object 'frmVPInventur
- Dim parm1 As String = ("%") : Dim parm2 As String = ("%") : Dim parm3 As String = ("%")
- Dim parm4 As String = ("%") : Dim parm5 As String = ("%") : Dim parm6 As String = ("%")
- Dim parm7 As String = ("%") : Dim parm8 As String = ("%") : Dim parm9 As String = ("%Z1%")
- Dim DatenM As New DataSet
- Dim Debitor_ZDIS As String : Dim Name1 As String : Dim Ort As String : Dim PLZ As String : Dim Strasse As String 'Dim Telefon1 As String
- parm1 = parm1 + txtVPNrSuchen_IV.Text + parm1
- parm2 = parm2 + txtFirmaSuchen_IV.Text + parm2
- parm3 = parm3 + txtOrtSuchen_IV.Text + parm3
- parm4 = parm4 + txtPLZSuchen_IV.Text + parm4
- parm5 = parm5 + txtStrasseSuchen_IV.Text + parm5
- Dim Zaehler As String = "0"
- DGVSuchen1_IV.Visible = True
- DGVSuchen1_IV.Size = New Size(792, 316)
- DGVSuchen1_IV.Location = New Point(9, 56)
- DBopenLocal()
- conLocal.Open()
- cmdLocal.CommandText = "SELECT DISTINCT [tblKNA1_ZDIS.Debitor], [tblKNA1_ZDIS.Name1], [tblKNA1_ZDIS.Ort], [tblKNA1_ZDIS.PLZ], [tblKNA1_ZDIS.Strasse]
- FROM tblKNA1_ZDIS
- WHERE tblKNA1_ZDIS.Debitor LIKE '" & parm1 & "' And tblKNA1_ZDIS.Name1 LIKE '" & parm2 & "' And tblKNA1_ZDIS.Ort LIKE '" & parm3 & "'
- And tblKNA1_ZDIS.PLZ LIKE '" & parm4 & "' And tblKNA1_ZDIS.Strasse LIKE '" & parm5 & "'
- ORDER BY tblKNA1_ZDIS.Debitor"
- DGVSuchen1_IV.Rows.Clear()
- readerLocal = cmdLocal.ExecuteReader
- Dim LaufendeNr As String = Nothing
- Do While readerLocal.Read
- Zaehler = CStr(CInt(Zaehler) + 1)
- Debitor_ZDIS = CStr(readerLocal("tblKNA1_ZDIS.Debitor"))
- Debitor_ZDIS = Debitor_ZDIS.Substring(4)
- Name1 = CStr(readerLocal("tblKNA1_ZDIS.Name1"))
- Ort = CStr(readerLocal("tblKNA1_ZDIS.Ort"))
- Strasse = CStr(readerLocal("tblKNA1_ZDIS.Strasse"))
- PLZ = CStr(readerLocal("tblKNA1_ZDIS.PLZ"))
- DGVSuchen1_IV.Rows.Add(Zaehler, Debitor_ZDIS, Name1, PLZ, Ort, Strasse)
- btnSuchenVP_IV.Text = Zaehler + " VP's gefunden"
- btnSuchenVP_IV.Refresh()
- Loop
- If Debitor_ZDIS = "" Then
- DGVSuchen1_IV.Visible = False
- End If
- DGVSuchen1_IV.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells
- DGVSuchen1_IV.Refresh()
- cmdLocal.Cancel()
- readerLocal.Close()
- conLocal.Close()
- End Function
Danke in Voraus
LEOGOLD