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
' Me.Size = My.Settings.frmMainSize
' Me.Location = My.Settings.frmMainPosition
Catch ex As Exception
Catch ex As Exception
'nix tun - Standardgröße wird somit automatisch gesetzt
End Try
@@ -38,167 +37,153 @@ Public Class usrCntlMitarbeiter
txtSuche.Focus()
End Sub
Public Sub Tabelle_anzeigen()
If TabControl1.SelectedIndex = 0 Then
showVERAGATILLA("VERAG")
ElseIf TabControl1.SelectedIndex = 1 Then
showVERAGATILLA("ATILLA")
ElseIf TabControl1.SelectedIndex = 2 Then
showVERAGATILLA("IMEX")
ElseIf TabControl1.SelectedIndex = 3 Then
showVERAGATILLA("UNISPED")
ElseIf TabControl1.SelectedIndex = 4 Then
showVERAGATILLA("AMBAR")
ElseIf TabControl1.SelectedIndex = 5 Then
showVERAGATILLA("FRONTOFFICE")
ElseIf TabControl1.SelectedIndex = 6 Then
showVERAGATILLA("VERIMEX")
ElseIf TabControl1.SelectedIndex = 7 Then
If dgvTimasNew IsNot Nothing Then
showTIMAS(False)
End If
End If
Public Sub Tabelle_anzeigen()
Dim startIndex As Integer = TabControl1.SelectedIndex
Dim firmaGefunden As Boolean = False
Dim tabCount As Integer = TabControl1.TabCount
Dim checkedTabs As Integer = 0
Dim i As Integer = startIndex
Do While checkedTabs < tabCount
Dim firma As String = ""
Select Case i
Case 0
firma = "VERAG"
Case 1
firma = "ATILLA"
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
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
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
Public Sub showVERAGATILLA(firma)
'Paint wieder reaktivieren
Public Function showVERAGATILLA(firma As String) As Boolean
' Paint wieder reaktivieren
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 & "'))"
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...
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
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
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
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
If firma = "VERAG" Then
' Daten laden und prüfen
Select Case firma
Case "VERAG"
c.SET_SQL(sql, "ADMIN")
c.LOAD()
If c.RowCount > 0 Then
sortDGV(c)
c.Sort(c.Columns(3), ListSortDirection.Ascending)
Return True
End If
Case "ATILLA"
dgvATILLA.SET_SQL(sql, "ADMIN")
dgvATILLA.LOAD()
If dgvATILLA.RowCount > 0 Then
sortDGV(dgvATILLA)
dgvATILLA.Sort(dgvATILLA.Columns(3), ListSortDirection.Ascending)
Return True
End If
Case "IMEX"
dgvIMEX.SET_SQL(sql, "ADMIN")
dgvIMEX.LOAD()
If dgvIMEX.RowCount > 0 Then
sortDGV(dgvIMEX)
dgvIMEX.Sort(dgvIMEX.Columns(3), ListSortDirection.Ascending)
Return True
End If
Case "UNISPED"
dgvUNISPED.SET_SQL(sql, "ADMIN")
dgvUNISPED.LOAD()
If dgvUNISPED.RowCount > 0 Then
sortDGV(dgvUNISPED)
dgvUNISPED.Sort(dgvUNISPED.Columns(3), ListSortDirection.Ascending)
Return True
End If
Case "AMBAR"
dgvAMBAR.SET_SQL(sql, "ADMIN")
dgvAMBAR.LOAD()
If dgvAMBAR.RowCount > 0 Then
sortDGV(dgvAMBAR)
dgvAMBAR.Sort(dgvAMBAR.Columns(3), ListSortDirection.Ascending)
Return True
End If
Case "FRONTOFFICE"
dgvFRONTOFFICE.SET_SQL(sql, "ADMIN")
dgvFRONTOFFICE.LOAD()
If dgvFRONTOFFICE.RowCount > 0 Then
sortDGV(dgvFRONTOFFICE)
dgvFRONTOFFICE.Sort(dgvFRONTOFFICE.Columns(3), ListSortDirection.Ascending)
Return True
End If
Case "VERIMEX"
dgvVERIMEX.SET_SQL(sql, "ADMIN")
dgvVERIMEX.LOAD()
If dgvVERIMEX.RowCount > 0 Then
sortDGV(dgvVERIMEX)
dgvVERIMEX.Sort(dgvVERIMEX.Columns(3), ListSortDirection.Ascending)
Return True
End If
' Fügen Sie weitere Fälle hinzu, falls erforderlich
End Select
' dgvVERAG.DataSource = UID.AnzeigeTabelleFirma(sql)
c.SET_SQL(sql, "ADMIN")
c.LOAD()
'Tabelle Kommt/Geht bereinigen
If c.RowCount = 0 Then
c.DataSource = Nothing
Else
sortDGV(c)
'Eintraege_festlegen()
'AL: Sortierung nach Ausfahrt (Zeit)
c.Sort(c.Columns(3), ListSortDirection.Ascending)
End If
ElseIf firma = "ATILLA" Then
' dgvATILLA.DataSource = UID.AnzeigeTabelleFirma(sql)
dgvATILLA.SET_SQL(sql, "ADMIN")
dgvATILLA.LOAD()
'Tabelle Kommt/Geht bereinigen
If dgvATILLA.RowCount = 0 Then
dgvATILLA.DataSource = Nothing
Else
sortDGV(dgvATILLA)
'Eintraege_festlegen()
'AL: Sortierung nach Ausfahrt (Zeit)
dgvATILLA.Sort(dgvATILLA.Columns(3), ListSortDirection.Ascending)
End If
ElseIf firma = "IMEX" Then
' dgvATILLA.DataSource = UID.AnzeigeTabelleFirma(sql)
dgvIMEX.SET_SQL(sql, "ADMIN")
dgvIMEX.LOAD()
'Tabelle Kommt/Geht bereinigen
If dgvIMEX.RowCount = 0 Then
dgvIMEX.DataSource = Nothing
Else
sortDGV(dgvIMEX)
'Eintraege_festlegen()
'AL: Sortierung nach Ausfahrt (Zeit)
dgvIMEX.Sort(dgvIMEX.Columns(3), ListSortDirection.Ascending)
End If
ElseIf firma = "UNISPED" Then
' dgvATILLA.DataSource = UID.AnzeigeTabelleFirma(sql)
dgvUNISPED.SET_SQL(sql, "ADMIN")
dgvUNISPED.LOAD()
'Tabelle Kommt/Geht bereinigen
If dgvUNISPED.RowCount = 0 Then
dgvUNISPED.DataSource = Nothing
Else
sortDGV(dgvUNISPED)
'Eintraege_festlegen()
'AL: Sortierung nach Ausfahrt (Zeit)
dgvUNISPED.Sort(dgvUNISPED.Columns(3), ListSortDirection.Ascending)
End If
ElseIf firma = "AMBAR" Then
' dgvATILLA.DataSource = UID.AnzeigeTabelleFirma(sql)
dgvAMBAR.SET_SQL(sql, "ADMIN")
dgvAMBAR.LOAD()
'Tabelle Kommt/Geht bereinigen
If dgvAMBAR.RowCount = 0 Then
dgvAMBAR.DataSource = Nothing
Else
sortDGV(dgvAMBAR)
'Eintraege_festlegen()
'AL: Sortierung nach Ausfahrt (Zeit)
dgvAMBAR.Sort(dgvAMBAR.Columns(3), ListSortDirection.Ascending)
End If
ElseIf firma = "FRONTOFFICE" Then
' dgvATILLA.DataSource = UID.AnzeigeTabelleFirma(sql)
dgvFRONTOFFICE.SET_SQL(sql, "ADMIN")
dgvFRONTOFFICE.LOAD()
'Tabelle Kommt/Geht bereinigen
If dgvFRONTOFFICE.RowCount = 0 Then
dgvFRONTOFFICE.DataSource = Nothing
Else
sortDGV(dgvFRONTOFFICE)
'Eintraege_festlegen()
'AL: Sortierung nach Ausfahrt (Zeit)
dgvFRONTOFFICE.Sort(dgvFRONTOFFICE.Columns(3), ListSortDirection.Ascending)
End If
Return False
End Function
ElseIf firma = "VERIMEX" Then
' dgvATILLA.DataSource = UID.AnzeigeTabelleFirma(sql)
dgvVERIMEX.SET_SQL(sql, "ADMIN")
dgvVERIMEX.LOAD()
'Tabelle Kommt/Geht bereinigen
If dgvVERIMEX.RowCount = 0 Then
dgvVERIMEX.DataSource = Nothing
Else
sortDGV(dgvVERIMEX)
'Eintraege_festlegen()
'AL: Sortierung nach Ausfahrt (Zeit)
dgvVERIMEX.Sort(dgvVERIMEX.Columns(3), ListSortDirection.Ascending)
End If
End If
End Sub
Public Sub showTIMAS(refresh As Boolean)
@@ -419,7 +404,6 @@ Public Class usrCntlMitarbeiter
End Sub
Private Sub TabControl1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles TabControl1.SelectedIndexChanged
txtSuche.Text = ""
txtSuche.Focus()
Tabelle_anzeigen()
End Sub