MA Suche erleichtert

This commit is contained in:
2024-10-09 16:15:48 +02:00
parent d0c52190cb
commit 380f248996

View File

@@ -28,7 +28,6 @@ Public Class usrCntlMitarbeiter
Try Try
' Me.Size = My.Settings.frmMainSize ' Me.Size = My.Settings.frmMainSize
' Me.Location = My.Settings.frmMainPosition ' Me.Location = My.Settings.frmMainPosition
Catch ex As Exception
Catch ex As Exception Catch ex As Exception
'nix tun - Standardgröße wird somit automatisch gesetzt 'nix tun - Standardgröße wird somit automatisch gesetzt
End Try End Try
@@ -38,167 +37,153 @@ Public Class usrCntlMitarbeiter
txtSuche.Focus() txtSuche.Focus()
End Sub End Sub
Public Sub Tabelle_anzeigen() Public Sub Tabelle_anzeigen()
If TabControl1.SelectedIndex = 0 Then Dim startIndex As Integer = TabControl1.SelectedIndex
showVERAGATILLA("VERAG") Dim firmaGefunden As Boolean = False
ElseIf TabControl1.SelectedIndex = 1 Then Dim tabCount As Integer = TabControl1.TabCount
showVERAGATILLA("ATILLA")
ElseIf TabControl1.SelectedIndex = 2 Then Dim checkedTabs As Integer = 0
showVERAGATILLA("IMEX") Dim i As Integer = startIndex
ElseIf TabControl1.SelectedIndex = 3 Then
showVERAGATILLA("UNISPED") Do While checkedTabs < tabCount
ElseIf TabControl1.SelectedIndex = 4 Then Dim firma As String = ""
showVERAGATILLA("AMBAR") Select Case i
ElseIf TabControl1.SelectedIndex = 5 Then Case 0
showVERAGATILLA("FRONTOFFICE") firma = "VERAG"
ElseIf TabControl1.SelectedIndex = 6 Then Case 1
showVERAGATILLA("VERIMEX") firma = "ATILLA"
ElseIf TabControl1.SelectedIndex = 7 Then Case 2
firma = "IMEX"
Case 3
firma = "UNISPED"
Case 4
firma = "AMBAR"
Case 5
firma = "FRONTOFFICE"
Case 6
firma = "VERIMEX"
Case 7
If dgvTimasNew IsNot Nothing Then If dgvTimasNew IsNot Nothing Then
showTIMAS(False) showTIMAS(False)
firmaGefunden = True
Exit Do
End If
End Select
If firma <> "" Then
If showVERAGATILLA(firma) Then
' Wechsel zum Tab der gefundenen Firma
TabControl1.SelectedIndex = i
firmaGefunden = True
Exit Do
End If End If
End If End If
checkedTabs += 1
i = (i + 1) Mod tabCount ' Modulo-Operation für zyklisches Durchlaufen
Loop
If Not firmaGefunden Then
MsgBox("Keine Daten für die ausgewählten Kriterien gefunden.", MsgBoxStyle.Information)
End If
End Sub End Sub
Public Sub showVERAGATILLA(firma)
'Paint wieder reaktivieren Public Function showVERAGATILLA(firma As String) As Boolean
' Paint wieder reaktivieren
locZeilen = -1 locZeilen = -1
If Not Grid_aktiv Then Exit Sub If Not Grid_aktiv Then Return False
' Ihre ursprüngliche SQL-Abfrage hier, angepasst für die aktuelle Firma
Dim sql As String = "SELECT mit_id, mit_username, mit_vname, mit_nname, mit_niederlassung, mit_abteilung, mit_email, cast(case when mit_timasId is null then 0 else 1 end as bit) mit_ze, cast(case when isnull([mit_DAKOSY_SB],'')<> '' and isnull([mit_DAKOSY_SBFull],'')<>'' then 1 else 0 end as bit) mit_DAKOSY, mit_durchwahl, mit_gekuendigt, isnull(mit_foto_DocId,'') as mit_foto_DocId FROM tblMitarbeiter WHERE (mit_firma='" & firma & "' OR (mit_firma='ALL' AND mit_FirmaHaupt='" & firma & "'))"
' Rest Ihrer Filterbedingungen...
Dim sql As String = "SELECT mit_id,mit_username,mit_vname, mit_nname ,mit_niederlassung,mit_abteilung,mit_email,cast (case when mit_timasId is null then 0 else 1 end as bit) mit_ze, cast (case when isnull([mit_DAKOSY_SB],'')<> '' and isnull([mit_DAKOSY_SBFull],'')<>'' then 1 else 0 end as bit) mit_DAKOSY, mit_durchwahl,mit_gekuendigt, isnull(mit_foto_DocId,'') as mit_foto_DocId FROM tblMitarbeiter WHERE (mit_firma='" & firma & "' OR (mit_firma='ALL' AND mit_FirmaHaupt='" & firma & "' )) "
If txtSuche.Text <> "" Then If txtSuche.Text <> "" Then
sql &= " AND (mit_username LIKE '%" & txtSuche.Text & "%' OR mit_nname LIKE '%" & txtSuche.Text & "%' OR mit_vname LIKE '%" & txtSuche.Text & "%') " sql &= " AND (mit_username LIKE '%" & txtSuche.Text & "%' OR mit_nname LIKE '%" & txtSuche.Text & "%' OR mit_vname LIKE '%" & txtSuche.Text & "%')"
End If End If
If cbx.CheckState <> CheckState.Indeterminate Then If cbx.CheckState <> CheckState.Indeterminate Then
sql &= " AND mit_gekuendigt=" & IIf(cbx.Checked, 1, 0) sql &= " AND mit_gekuendigt=" & If(cbx.Checked, 1, 0)
End If End If
If cbxZE.CheckState <> CheckState.Indeterminate Then If cbxZE.CheckState <> CheckState.Indeterminate Then
sql &= IIf(cbxZE.Checked, " AND mit_timasId is not null", " AND mit_timasId is null") sql &= If(cbxZE.Checked, " AND mit_timasId is not null", " AND mit_timasId is null")
End If End If
If cbxDakosy.CheckState <> CheckState.Indeterminate Then If cbxDakosy.CheckState <> CheckState.Indeterminate Then
sql &= IIf(cbxDakosy.Checked, " AND (isnull([mit_DAKOSY_SB],'')<> '' AND isnull([mit_DAKOSY_SBFull],'')<>'')", " AND ((isnull([mit_DAKOSY_SB],'')= '' OR isnull([mit_DAKOSY_SBFull],'')=''))") sql &= If(cbxDakosy.Checked, " AND (isnull([mit_DAKOSY_SB],'')<> '' AND isnull([mit_DAKOSY_SBFull],'')<>'')", " AND (isnull([mit_DAKOSY_SB],'')= '' OR isnull([mit_DAKOSY_SBFull],'')='')")
End If End If
If firma = "VERAG" Then ' Daten laden und prüfen
Select Case firma
' dgvVERAG.DataSource = UID.AnzeigeTabelleFirma(sql) Case "VERAG"
c.SET_SQL(sql, "ADMIN") c.SET_SQL(sql, "ADMIN")
c.LOAD() c.LOAD()
'Tabelle Kommt/Geht bereinigen If c.RowCount > 0 Then
If c.RowCount = 0 Then
c.DataSource = Nothing
Else
sortDGV(c) sortDGV(c)
'Eintraege_festlegen()
'AL: Sortierung nach Ausfahrt (Zeit)
c.Sort(c.Columns(3), ListSortDirection.Ascending) c.Sort(c.Columns(3), ListSortDirection.Ascending)
Return True
End If End If
ElseIf firma = "ATILLA" Then Case "ATILLA"
' dgvATILLA.DataSource = UID.AnzeigeTabelleFirma(sql)
dgvATILLA.SET_SQL(sql, "ADMIN") dgvATILLA.SET_SQL(sql, "ADMIN")
dgvATILLA.LOAD() dgvATILLA.LOAD()
If dgvATILLA.RowCount > 0 Then
'Tabelle Kommt/Geht bereinigen
If dgvATILLA.RowCount = 0 Then
dgvATILLA.DataSource = Nothing
Else
sortDGV(dgvATILLA) sortDGV(dgvATILLA)
'Eintraege_festlegen()
'AL: Sortierung nach Ausfahrt (Zeit)
dgvATILLA.Sort(dgvATILLA.Columns(3), ListSortDirection.Ascending) dgvATILLA.Sort(dgvATILLA.Columns(3), ListSortDirection.Ascending)
Return True
End If End If
ElseIf firma = "IMEX" Then Case "IMEX"
' dgvATILLA.DataSource = UID.AnzeigeTabelleFirma(sql)
dgvIMEX.SET_SQL(sql, "ADMIN") dgvIMEX.SET_SQL(sql, "ADMIN")
dgvIMEX.LOAD() dgvIMEX.LOAD()
If dgvIMEX.RowCount > 0 Then
'Tabelle Kommt/Geht bereinigen
If dgvIMEX.RowCount = 0 Then
dgvIMEX.DataSource = Nothing
Else
sortDGV(dgvIMEX) sortDGV(dgvIMEX)
'Eintraege_festlegen()
'AL: Sortierung nach Ausfahrt (Zeit)
dgvIMEX.Sort(dgvIMEX.Columns(3), ListSortDirection.Ascending) dgvIMEX.Sort(dgvIMEX.Columns(3), ListSortDirection.Ascending)
Return True
End If End If
ElseIf firma = "UNISPED" Then Case "UNISPED"
' dgvATILLA.DataSource = UID.AnzeigeTabelleFirma(sql)
dgvUNISPED.SET_SQL(sql, "ADMIN") dgvUNISPED.SET_SQL(sql, "ADMIN")
dgvUNISPED.LOAD() dgvUNISPED.LOAD()
If dgvUNISPED.RowCount > 0 Then
'Tabelle Kommt/Geht bereinigen
If dgvUNISPED.RowCount = 0 Then
dgvUNISPED.DataSource = Nothing
Else
sortDGV(dgvUNISPED) sortDGV(dgvUNISPED)
'Eintraege_festlegen()
'AL: Sortierung nach Ausfahrt (Zeit)
dgvUNISPED.Sort(dgvUNISPED.Columns(3), ListSortDirection.Ascending) dgvUNISPED.Sort(dgvUNISPED.Columns(3), ListSortDirection.Ascending)
Return True
End If End If
ElseIf firma = "AMBAR" Then Case "AMBAR"
' dgvATILLA.DataSource = UID.AnzeigeTabelleFirma(sql)
dgvAMBAR.SET_SQL(sql, "ADMIN") dgvAMBAR.SET_SQL(sql, "ADMIN")
dgvAMBAR.LOAD() dgvAMBAR.LOAD()
If dgvAMBAR.RowCount > 0 Then
'Tabelle Kommt/Geht bereinigen
If dgvAMBAR.RowCount = 0 Then
dgvAMBAR.DataSource = Nothing
Else
sortDGV(dgvAMBAR) sortDGV(dgvAMBAR)
'Eintraege_festlegen()
'AL: Sortierung nach Ausfahrt (Zeit)
dgvAMBAR.Sort(dgvAMBAR.Columns(3), ListSortDirection.Ascending) dgvAMBAR.Sort(dgvAMBAR.Columns(3), ListSortDirection.Ascending)
Return True
End If End If
Case "FRONTOFFICE"
ElseIf firma = "FRONTOFFICE" Then
' dgvATILLA.DataSource = UID.AnzeigeTabelleFirma(sql)
dgvFRONTOFFICE.SET_SQL(sql, "ADMIN") dgvFRONTOFFICE.SET_SQL(sql, "ADMIN")
dgvFRONTOFFICE.LOAD() dgvFRONTOFFICE.LOAD()
If dgvFRONTOFFICE.RowCount > 0 Then
'Tabelle Kommt/Geht bereinigen
If dgvFRONTOFFICE.RowCount = 0 Then
dgvFRONTOFFICE.DataSource = Nothing
Else
sortDGV(dgvFRONTOFFICE) sortDGV(dgvFRONTOFFICE)
'Eintraege_festlegen()
'AL: Sortierung nach Ausfahrt (Zeit)
dgvFRONTOFFICE.Sort(dgvFRONTOFFICE.Columns(3), ListSortDirection.Ascending) dgvFRONTOFFICE.Sort(dgvFRONTOFFICE.Columns(3), ListSortDirection.Ascending)
Return True
End If End If
Case "VERIMEX"
ElseIf firma = "VERIMEX" Then
' dgvATILLA.DataSource = UID.AnzeigeTabelleFirma(sql)
dgvVERIMEX.SET_SQL(sql, "ADMIN") dgvVERIMEX.SET_SQL(sql, "ADMIN")
dgvVERIMEX.LOAD() dgvVERIMEX.LOAD()
If dgvVERIMEX.RowCount > 0 Then
'Tabelle Kommt/Geht bereinigen
If dgvVERIMEX.RowCount = 0 Then
dgvVERIMEX.DataSource = Nothing
Else
sortDGV(dgvVERIMEX) sortDGV(dgvVERIMEX)
'Eintraege_festlegen()
'AL: Sortierung nach Ausfahrt (Zeit)
dgvVERIMEX.Sort(dgvVERIMEX.Columns(3), ListSortDirection.Ascending) dgvVERIMEX.Sort(dgvVERIMEX.Columns(3), ListSortDirection.Ascending)
Return True
End If
End If End If
' Fügen Sie weitere Fälle hinzu, falls erforderlich
End Select
Return False
End Function
End Sub
Public Sub showTIMAS(refresh As Boolean) Public Sub showTIMAS(refresh As Boolean)
@@ -419,7 +404,6 @@ Public Class usrCntlMitarbeiter
End Sub End Sub
Private Sub TabControl1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles TabControl1.SelectedIndexChanged Private Sub TabControl1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles TabControl1.SelectedIndexChanged
txtSuche.Text = ""
txtSuche.Focus() txtSuche.Focus()
Tabelle_anzeigen() Tabelle_anzeigen()
End Sub End Sub