This commit is contained in:
2026-01-28 17:43:29 +01:00
parent 8b5be9ac14
commit 25a49a4f86
2 changed files with 19 additions and 41 deletions

View File

@@ -1,6 +1,8 @@
Imports System.Data.SqlClient
Imports System.Reflection
Imports System.Windows.Forms
Imports com.sun.org.apache.xerces.internal.impl
Imports com.sun.xml.internal.rngom
Public Class cMessenger
@@ -405,18 +407,25 @@ Public Class cMessenger
Try
Me.CHAT_MESSAGES.Clear()
Using conn As SqlConnection = SQL.GetNewOpenConnectionADMIN()
Using cmd As New SqlCommand("SELECT chatMg_id,chatMg_chatId,chatMg_maId,chatMg_maName,chatMg_maFirma,chatMg_datetime,chatMg_type,chatMg_text,chatMg_anhang_docId,chatMg_referenz_AvisoId,chatMg_referenz_SendungsId,chatMg_referenz_KundenNr FROM(SELECT TOP " & top & " chatMg_id,chatMg_chatId,chatMg_maId,chatMg_maName,chatMg_maFirma,chatMg_datetime,chatMg_type,chatMg_text,chatMg_anhang_docId,chatMg_referenz_AvisoId,chatMg_referenz_SendungsId,chatMg_referenz_KundenNr FROM [tblMessenger_ChatMessages] WHERE chatMg_chatId=@chat_id order by chatMg_datetime desc) as T order by chatMg_datetime asc", conn)
' Using cmd As New SqlCommand("SELECT chatMg_id,chatMg_chatId,chatMg_maId,chatMg_maName,chatMg_maFirma,chatMg_datetime,chatMg_type,chatMg_text,chatMg_anhang_docId,chatMg_referenz_AvisoId,chatMg_referenz_SendungsId,chatMg_referenz_KundenNr FROM(SELECT TOP " & top & " chatMg_id,chatMg_chatId,chatMg_maId,chatMg_maName,chatMg_maFirma,chatMg_datetime,chatMg_type,chatMg_text,chatMg_anhang_docId,chatMg_referenz_AvisoId,chatMg_referenz_SendungsId,chatMg_referenz_KundenNr FROM [tblMessenger_ChatMessages] WHERE chatMg_chatId=@chat_id order by chatMg_datetime desc) as T order by chatMg_datetime asc", conn)
Using cmd As New SqlCommand("SELECT TOP (@top) chatMg_id,chatMg_chatId,chatMg_maId,chatMg_maName,chatMg_maFirma,chatMg_datetime,chatMg_type,chatMg_text,chatMg_anhang_docId,chatMg_referenz_AvisoId,chatMg_referenz_SendungsId,chatMg_referenz_KundenNr FROM tblMessenger_ChatMessages WHERE chatMg_chatId = @chat_id ORDER BY chatMg_datetime DESC", conn)
cmd.Parameters.AddWithValue("@chat_id", chat_id)
cmd.Parameters.AddWithValue("@top", top)
Dim dr = cmd.ExecuteReader()
While dr.Read
'Dim MSG As New cMessenger_ChatMessages(dr.Item("chatMg_id")) 'Me.chat_id, dr.Item("chatMb_maId")) 'yxc
'Me.CHAT_MESSAGES.Add(MSG)
Dim MSG As New cMessenger_ChatMessages(dr.Item("chatMg_id"), dr.Item("chatMg_maId"), dr.Item("chatMg_datetime"), dr.Item("chatMg_maName"), dr.Item("chatMg_maFirma"), dr.Item("chatMg_type"), dr.Item("chatMg_text"), IIf(IsDBNull(dr.Item("chatMg_anhang_docId")), Nothing, dr.Item("chatMg_anhang_docId")), IIf(IsDBNull(dr.Item("chatMg_referenz_AvisoId")), Nothing, dr.Item("chatMg_referenz_AvisoId")), IIf(IsDBNull(dr.Item("chatMg_referenz_SendungsId")), Nothing, dr.Item("chatMg_referenz_SendungsId")), dr.Item("chatMg_referenz_KundenNr")) 'Me.chat_id, dr.Item("chatMb_maId")) 'yxc
Dim MSG As New cMessenger_ChatMessages(dr.Item("chatMg_id")) ' ----> 100 messages = 101 SQL calls
'Hier werden die einzelnen MSg-Obj nicht mehr per SQL geladen, sondern direkt als Objekt übergeben -> schneller!
'Dim MSG As New cMessenger_ChatMessages(dr.Item("chatMg_id"), dr.Item("chatMg_maId"), dr.Item("chatMg_datetime"), dr.Item("chatMg_maName"), dr.Item("chatMg_maFirma"), dr.Item("chatMg_type"), dr.Item("chatMg_text"), IIf(IsDBNull(dr.Item("chatMg_anhang_docId")), Nothing, dr.Item("chatMg_anhang_docId")), IIf(IsDBNull(dr.Item("chatMg_referenz_AvisoId")), Nothing, dr.Item("chatMg_referenz_AvisoId")), IIf(IsDBNull(dr.Item("chatMg_referenz_SendungsId")), Nothing, dr.Item("chatMg_referenz_SendungsId")), dr.Item("chatMg_referenz_KundenNr")) 'Me.chat_id, dr.Item("chatMb_maId")) 'yxc
Me.CHAT_MESSAGES.Add(MSG)
End While
dr.Close()
End Using
End Using
Me.CHAT_MESSAGES.Reverse()
Catch ex As Exception
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
End Try
@@ -430,15 +439,16 @@ Public Class cMessenger
cmd.Parameters.AddWithValue("@chat_id", chat_id)
cmd.Parameters.AddWithValue("@dateTmp", dateTmp)
Dim dr = cmd.ExecuteReader()
While dr.Read
'Dim MSG As New cMessenger_ChatMessages(dr.Item("chatMg_id")) 'Me.chat_id, dr.Item("chatMb_maId")) 'yxc
'Me.CHAT_MESSAGES.Add(MSG)
Dim MSG As New cMessenger_ChatMessages(dr.Item("chatMg_id")) '----> 100 messages = 101 SQL calls
'Hier werden die einzelnen MSg-Obj nicht mehr per SQL geladen, sondern direkt als Objekt übergeben -> schneller!
Dim MSG As New cMessenger_ChatMessages(dr.Item("chatMg_id"), dr.Item("chatMg_maId"), dr.Item("chatMg_datetime"), dr.Item("chatMg_maName"), dr.Item("chatMg_maFirma"), dr.Item("chatMg_type"), dr.Item("chatMg_text"), IIf(IsDBNull(dr.Item("chatMg_anhang_docId")), Nothing, dr.Item("chatMg_anhang_docId")), IIf(IsDBNull(dr.Item("chatMg_referenz_AvisoId")), Nothing, dr.Item("chatMg_referenz_AvisoId")), IIf(IsDBNull(dr.Item("chatMg_referenz_SendungsId")), Nothing, dr.Item("chatMg_referenz_SendungsId")), dr.Item("chatMg_referenz_KundenNr")) 'Me.chat_id, dr.Item("chatMb_maId")) 'yxc
'Dim MSG As New cMessenger_ChatMessages(dr.Item("chatMg_id"), dr.Item("chatMg_maId"), dr.Item("chatMg_datetime"), dr.Item("chatMg_maName"), dr.Item("chatMg_maFirma"), dr.Item("chatMg_type"), dr.Item("chatMg_text"), IIf(IsDBNull(dr.Item("chatMg_anhang_docId")), Nothing, dr.Item("chatMg_anhang_docId")), IIf(IsDBNull(dr.Item("chatMg_referenz_AvisoId")), Nothing, dr.Item("chatMg_referenz_AvisoId")), IIf(IsDBNull(dr.Item("chatMg_referenz_SendungsId")), Nothing, dr.Item("chatMg_referenz_SendungsId")), dr.Item("chatMg_referenz_KundenNr")) 'Me.chat_id, dr.Item("chatMb_maId")) 'yxc
Me.CHAT_MESSAGES.Add(MSG)
End While
dr.Close()
End Using
End Using
@@ -776,6 +786,7 @@ Public Class cMessenger
Me.chatMg_datetime = chatMg_datetime
Me.chatMg_maName = chatMg_maName
Me.chatMg_maFirma = chatMg_maFirma
Me.chatMg_type = chatMg_type
Me.chatMg_text = chatMg_text
Me.chatMg_anhang_docId = chatMg_anhang_docId
Me.chatMg_referenz_AvisoId = chatMg_referenz_AvisoId

View File

@@ -160,39 +160,6 @@ Public Class frmMessenger
End If
End Sub
'Sub initEmojisTEST()
' FlowLayoutPanel.Controls.Clear()
' If alloweasteregg Then pic.Visible = False
' If System.IO.Directory.Exists(DATENVERVER_OPTIONS.getRootDir & "\DOKUMENTE\CHAT_EMOJIS\") Then
' Dim EmojiPath = Environment.GetFolderPath(Environment.SpecialFolder.Personal) & "CHAT_EMOJIS\"
' If Not System.IO.Directory.Exists(EmojiPath) Then System.IO.Directory.CreateDirectory(EmojiPath)
' If VERAG_PROG_ALLGEMEIN.cProgrammeUpdate.copyProgramLIST(DATENVERVER_OPTIONS.getRootDir & "\DOKUMENTE\CHAT_EMOJIS\", EmojiPath, {}) Then
' For Each a In System.IO.Directory.GetFiles(EmojiPath) '.OrderBy(Function(f) f)
' If alloweasteregg Or Not a.Contains("easteregg") Then
' If System.IO.File.Exists(a) And a.Contains(".png") And a.Contains("emoji_") Then
' Dim p As New PictureBox
' p.Size = New Size(40, 40)
' p.BackgroundImage = Image.FromFile(a)
' p.BackgroundImageLayout = ImageLayout.Zoom
' p.Cursor = Cursors.Hand
' AddHandler p.Click, Sub()
' If Not CHAT.chat_aktiv Then MsgBox("Chat inaktiv!") : Exit Sub
' If CHAT IsNot Nothing Then
' saveEmoji(a)
' End If
' End Sub
' FlowLayoutPanel.Controls.Add(p)
' End If
' End If
' Next
' End If
' End If
'End Sub
Sub intiDGVChats(Optional dgv_ChatID = -1, Optional reloadChat = True, Optional selFirst = False)