Imports System.ComponentModel Public Class usrCntlMitarbeiter Dim ConnStr As String Private UID As New cMitarbeiter Private cOptionenDAL As New cOptionenDAL Private Grid_aktiv As Boolean = False Private Anzahl As Integer Private locZeilen As Integer = -1 Public mid As Integer = -1 Private Sub uctrlMitarbeiter_Load(sender As Object, e As EventArgs) Handles MyBase.Load ConnStr = frmMain.ConnStr Try ' Me.Size = My.Settings.frmMainSize ' Me.Location = My.Settings.frmMainPosition Catch ex As Exception 'nix tun - Standardgröße wird somit automatisch gesetzt End Try Grid_aktiv = True Tabelle_anzeigen() 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") End If End Sub Public Sub showVERAGATILLA(firma) 'Paint wieder reaktivieren locZeilen = -1 If Not Grid_aktiv Then Exit Sub Dim sql As String = "SELECT mit_id,mit_username,mit_vname, mit_nname ,mit_niederlassung,mit_abteilung,mit_email,mit_durchwahl,mit_gekuendigt FROM tblMitarbeiter WHERE (mit_firma='" & firma & "' OR mit_firma='ALL') " If txtSuche.Text <> "" Then 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) End If If firma = "VERAG" Then ' dgvVERAG.DataSource = UID.AnzeigeTabelleFirma(sql) dgvVERAG.SET_SQL(sql, "ADMIN") dgvVERAG.LOAD() 'Tabelle Kommt/Geht bereinigen If dgvVERAG.RowCount = 0 Then dgvVERAG.DataSource = Nothing Else sortVERAG() 'Eintraege_festlegen() 'AL: Sortierung nach Ausfahrt (Zeit) dgvVERAG.Sort(dgvVERAG.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 sortATILLA() '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 sortIMEX() 'Eintraege_festlegen() 'AL: Sortierung nach Ausfahrt (Zeit) dgvIMEX.Sort(dgvIMEX.Columns(3), ListSortDirection.Ascending) End If End If End Sub Private Sub sortVERAG() With dgvVERAG .RowTemplate.Height = 20 .RowTemplate.DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopLeft .AllowUserToAddRows = False .AllowUserToDeleteRows = False .AllowUserToOrderColumns = False .AllowUserToResizeColumns = False .AllowUserToResizeRows = False .RowTemplate.ReadOnly = True .RowHeadersVisible = False .SelectionMode = DataGridViewSelectionMode.FullRowSelect .AllowUserToOrderColumns = True .Columns(0).Visible = False 'ID nicht anzeigen .Columns(1).Width = 150 .Columns(1).HeaderText = "Username" .Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter .Columns(2).Width = 100 .Columns(2).HeaderText = "Vorname" .Columns(3).Width = 130 .Columns(3).HeaderText = "Nachname" .Columns(4).Width = 85 .Columns(4).HeaderText = "Niederlassung" .Columns(5).Width = 85 .Columns(5).HeaderText = "Abteilung" .Columns(6).Width = 120 .Columns(6).HeaderText = "Email" .Columns(7).Width = 120 .Columns(7).HeaderText = "TelefonNr." .Columns(8).Width = 80 .Columns(8).HeaderText = "Gekündigt" End With End Sub Private Sub sortATILLA() With dgvATILLA .RowTemplate.Height = 20 .RowTemplate.DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopLeft .AllowUserToAddRows = False .AllowUserToDeleteRows = False .AllowUserToOrderColumns = False .AllowUserToResizeColumns = False .AllowUserToResizeRows = False .RowTemplate.ReadOnly = True .RowHeadersVisible = False .SelectionMode = DataGridViewSelectionMode.FullRowSelect .AllowUserToOrderColumns = True .Columns(0).Visible = False 'ID nicht anzeigen .Columns(1).Width = 150 .Columns(1).HeaderText = "Username" .Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter .Columns(2).Width = 100 .Columns(2).HeaderText = "Vorname" .Columns(3).Width = 130 .Columns(3).HeaderText = "Nachname" .Columns(4).Width = 85 .Columns(4).HeaderText = "Niederlassung" .Columns(5).Width = 85 .Columns(5).HeaderText = "Abteilung" .Columns(6).Width = 120 .Columns(6).HeaderText = "Email" .Columns(7).Width = 120 .Columns(7).HeaderText = "TelefonNr." .Columns(8).Width = 80 .Columns(8).HeaderText = "Gekündigt" End With End Sub Private Sub sortIMEX() With dgvIMEX .RowTemplate.Height = 20 .RowTemplate.DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopLeft .AllowUserToAddRows = False .AllowUserToDeleteRows = False .AllowUserToOrderColumns = False .AllowUserToResizeColumns = False .AllowUserToResizeRows = False .RowTemplate.ReadOnly = True .RowHeadersVisible = False .SelectionMode = DataGridViewSelectionMode.FullRowSelect .AllowUserToOrderColumns = True .Columns(0).Visible = False 'ID nicht anzeigen .Columns(1).Width = 150 .Columns(1).HeaderText = "Username" .Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter .Columns(2).Width = 100 .Columns(2).HeaderText = "Vorname" .Columns(3).Width = 130 .Columns(3).HeaderText = "Nachname" .Columns(4).Width = 85 .Columns(4).HeaderText = "Niederlassung" .Columns(5).Width = 85 .Columns(5).HeaderText = "Abteilung" .Columns(6).Width = 120 .Columns(6).HeaderText = "Email" .Columns(7).Width = 120 .Columns(7).HeaderText = "TelefonNr." .Columns(8).Width = 80 .Columns(8).HeaderText = "Gekündigt" End With End Sub Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click Dim Firma = "" Select Case TabControl1.SelectedIndex Case 0 : Firma = "VERAG" Case 1 : Firma = "ATILLA" Case 2 : Firma = "IMEX" End Select Dim frmMitarbDetails As New frmMitarbDetails(Firma) frmMitarbDetails.Show() AddHandler frmMitarbDetails.FormClosing, AddressOf handleClose End Sub Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click Dim frmMitarbDetails As New frmMitarbDetails frmMitarbDetails.mid = dgvVERAG.CurrentRow.Cells(0).Value frmMitarbDetails.Show() AddHandler frmMitarbDetails.FormClosing, AddressOf handleClose End Sub Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click If TabControl1.SelectedIndex = 0 Then Select Case MsgBox("Soll der Mitarbeiter '" & dgvVERAG.CurrentRow.Cells(1).Value & "' wirklich gelöscht werden?", vbQuestion Or vbYesNo Or vbDefaultButton2, "Löschen?") Case vbYes UID.delData(Convert.ToInt32(dgvVERAG.CurrentRow.Cells(0).Value)) Tabelle_anzeigen() Case vbNo End Select ElseIf TabControl1.SelectedIndex = 1 Then Select Case MsgBox("Soll der Mitarbeiter '" & dgvATILLA.CurrentRow.Cells(1).Value & "' wirklich gelöscht werden?", vbQuestion Or vbYesNo Or vbDefaultButton2, "Löschen?") Case vbYes UID.delData(Convert.ToInt32(dgvATILLA.CurrentRow.Cells(0).Value)) Tabelle_anzeigen() Case vbNo End Select ElseIf TabControl1.SelectedIndex = 2 Then Select Case MsgBox("Soll der Mitarbeiter '" & dgvIMEX.CurrentRow.Cells(1).Value & "' wirklich gelöscht werden?", vbQuestion Or vbYesNo Or vbDefaultButton2, "Löschen?") Case vbYes UID.delData(Convert.ToInt32(dgvIMEX.CurrentRow.Cells(0).Value)) Tabelle_anzeigen() Case vbNo End Select End If End Sub Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click Dim l As IList(Of VERAG_PROG_ALLGEMEIN.cMitarbeiter) l = cOptionenDAL.getDataMitarb() frmPrintView.Show() frmPrintView.BefüllenMitarb(l) End Sub Private Sub handleClose() Tabelle_anzeigen() frmMain.BringToFront() End Sub Private Sub dgvVERAG_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgvVERAG.CellDoubleClick Me.Cursor = Cursors.WaitCursor Dim frmMitarbDetails As New frmMitarbDetails frmMitarbDetails.mid = dgvVERAG.CurrentRow.Cells(0).Value frmMitarbDetails.ShowDialog(Me) dgvVERAG.RELOAD() Me.Cursor = Cursors.Default ' AddHandler frmMitarbDetails.FormClosing, AddressOf handleClose End Sub Private Sub dgvATILLA_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgvATILLA.CellDoubleClick Me.Cursor = Cursors.WaitCursor Dim frmMitarbDetails As New frmMitarbDetails frmMitarbDetails.mid = dgvATILLA.CurrentRow.Cells(0).Value frmMitarbDetails.ShowDialog(Me) dgvATILLA.RELOAD() Me.Cursor = Cursors.Default ' AddHandler frmMitarbDetails.FormClosing, AddressOf handleClose End Sub Private Sub dgvIMEX_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgvIMEX.CellDoubleClick Me.Cursor = Cursors.WaitCursor Dim frmMitarbDetails As New frmMitarbDetails frmMitarbDetails.mid = dgvIMEX.CurrentRow.Cells(0).Value frmMitarbDetails.ShowDialog(Me) dgvIMEX.RELOAD() Me.Cursor = Cursors.Default ' AddHandler frmMitarbDetails.FormClosing, AddressOf handleClose End Sub Private Sub TabControl1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles TabControl1.SelectedIndexChanged txtSuche.Text = "" txtSuche.Focus() Tabelle_anzeigen() End Sub Private Sub dgvVERAG_CellContentClick_1(sender As Object, e As DataGridViewCellEventArgs) Handles dgvVERAG.CellContentClick End Sub Private Sub txtSuche_KeyDown(sender As Object, e As KeyEventArgs) Handles txtSuche.KeyDown If e.KeyCode = Keys.Return Then If TabControl1.SelectedIndex = 0 Then If dgvVERAG.SelectedRows.Count > 0 Then dgvVERAG_CellContentClick(dgvVERAG, New DataGridViewCellEventArgs(0, dgvVERAG.SelectedRows(0).Index)) End If ElseIf TabControl1.SelectedIndex = 1 Then If dgvATILLA.SelectedRows.Count > 0 Then dgvATILLA_CellContentClick(dgvATILLA, New DataGridViewCellEventArgs(0, dgvATILLA.SelectedRows(0).Index)) End If End If ElseIf TabControl1.SelectedIndex = 1 Then If dgvIMEX.SelectedRows.Count > 0 Then dgvIMEX_CellContentClick(dgvIMEX, New DataGridViewCellEventArgs(0, dgvIMEX.SelectedRows(0).Index)) End If End If End Sub Private Sub txtSuche_TextChanged(sender As Object, e As EventArgs) Handles txtSuche.TextChanged Tabelle_anzeigen() End Sub Private Sub cbx_CheckedChanged(sender As Object, e As EventArgs) Handles cbx.CheckStateChanged Tabelle_anzeigen() End Sub End Class