Public Class frmBerechtigungsObjekte Dim progId = -1 Dim codename = "" Dim sql As New VERAG_PROG_ALLGEMEIN.SQL Dim BerechtigungsObjekte As VERAG_PROG_ALLGEMEIN.cBerechtigungsObjekte_List Dim BerechtigungenGruppen As VERAG_PROG_ALLGEMEIN.cBerechtigungenGruppen_List Sub New(progId) ' Dieser Aufruf ist für den Designer erforderlich. InitializeComponent() Me.progId = progId ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu. End Sub Sub New(progId, codename) ' Dieser Aufruf ist für den Designer erforderlich. InitializeComponent() Me.progId = progId Me.codename = codename ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu. End Sub Private Sub frmBerechtigungsObjekte_Load(sender As Object, e As EventArgs) Handles Me.Load Label10.Text = codename init() End Sub Sub init(Optional searchparam As String = "") MyComboBox1.SelectedIndex = 0 gdvGruppen.Rows.Clear() dgvObjekte.Rows.Clear() dgvGruppenBenutzer.Rows.Clear() BerechtigungsObjekte = New VERAG_PROG_ALLGEMEIN.cBerechtigungsObjekte_List(progId, searchparam) BerechtigungenGruppen = New VERAG_PROG_ALLGEMEIN.cBerechtigungenGruppen_List(progId) For Each b In BerechtigungenGruppen.LIST gdvGruppen.Rows.Add(b.bergr_id, b.bergr_bezeichnung) Next ' Dim dt As DataTable = sql.loadDgvBySql("SELECT [bero_id],[bero_bezeichnung],[bero_art] FROM [tblBerechtigungsObjekte] WHERE [bero_progId]=" & progId, "ADMIN") For Each b In BerechtigungsObjekte.LIST dgvObjekte.Rows.Add(b.bero_id, b.bero_bezeichnung, b.bero_art) Next MyComboBox2.Items.Clear() MyComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", "")) For Each i In BerechtigungenGruppen.LIST MyComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(i.bergr_bezeichnung, i.bergr_id)) Next MyComboBox3.Items.Clear() MyComboBox3.fillWithSQL("SELECT [mit_id],[mit_username] + ' (' + mit_vname + ' ' + mit_nname + ') ' + mit_firma FROM [ADMIN].[dbo].[tblMitarbeiter] /*INNER JOIN [ADMIN].[dbo].[tblBerProg] ON mit_id=[bepr_userId] INNER JOIN [ADMIN].[dbo].[tblBerechtigungen] ON [ber_id]=[bepr_berId] " & " WHERE ber_progId=" & progId & " AND [ber_allowed]=1*/ ORDER BY mit_username", False, "ADMIN", True) gdvGruppen.ClearSelection() dgvObjekte.ClearSelection() dgvGruppenBenutzer.ClearSelection() cboFirma.Items.Clear() cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", "")) cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG", "1")) cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("IMEX", "20")) cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("ATILLA", "7")) cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("UNISPED", "21")) cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("AMBAR", "24")) cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("FRONTOFFICE", "17")) cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERIMEX", "25")) cboAbteilung.Items.Clear() cboAbteilung.fillWithSQL("SELECT [abt_id],[abt_bezeichnung] FROM tblAbteilungen", False, "ADMIN", True) cboNiederlassung.Items.Clear() cboNiederlassung.fillWithSQL("SELECT [nl_id],[nl_bezeichnung] FROM tblNiederlassungen", False, "ADMIN", True) End Sub Private Sub dgvObjekte_SelectionChanged(sender As Object, e As EventArgs) Handles dgvObjekte.SelectionChanged dgvGruppenBenutzer.Rows.Clear() If dgvObjekte.SelectedRows.Count = 0 Then Exit Sub loadGruppen() End Sub Sub loadGruppen() If dgvObjekte.SelectedRows.Count = 0 Then Exit Sub dgvGruppenBenutzer.Rows.Clear() For Each b In BerechtigungsObjekte.LIST If b.bero_id = dgvObjekte.SelectedRows(0).Cells("id").Value Then If b.BER_OBJ_ZUORD IsNot Nothing Then For Each bz In b.BER_OBJ_ZUORD dgvGruppenBenutzer.Rows.Add(bz.beroz_id, bz.Bezeichnung, bz.beroz_art, bz.beroz_berechtigungsstufe) ' If bz.beroz_art = "B" Then ' MyListBox2.Items.Add(bz.BenutzerBezeichnung & " (B)") ' Else ' MyListBox2.Items.Add(bz.GruppenBezeichnung & " (G)") ' dgvGruppenBenutzer.Rows.Add(bz.beroz_id, bz.GruppenBezeichnung, bz.beroz_art, bz.beroz_berechtigungsstufe) ' End If Next Exit Sub End If End If Next End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click If dgvObjekte.SelectedRows.Count = 0 Then Exit Sub 'Gruppe zuordnen If MyComboBox2._value = String.Empty Then Exit Sub If Not IsNumeric(MyTextBox2.Text) Then Exit Sub Dim BOZ As New VERAG_PROG_ALLGEMEIN.cBerechtigungsObjekteZuordnung BOZ.beroz_beroId = dgvObjekte.SelectedRows(0).Cells("id").Value BOZ.beroz_bergrId = MyComboBox2._value BOZ.beroz_art = "G" BOZ.beroz_berechtigungsstufe = MyTextBox2.Text BOZ.INSERT() BerechtigungsObjekte.LOAD_LIST() loadGruppen() MyComboBox2.SelectedIndex = 0 MyTextBox2.Text = "0" End Sub Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click If dgvObjekte.SelectedRows.Count = 0 Then Exit Sub 'Gruppe zuordnen If cboAbteilung._value = String.Empty Then Exit Sub If Not IsNumeric(MyTextBox6.Text) Then Exit Sub Dim BOZ As New VERAG_PROG_ALLGEMEIN.cBerechtigungsObjekteZuordnung BOZ.beroz_beroId = dgvObjekte.SelectedRows(0).Cells("id").Value BOZ.beroz_bergrId = cboAbteilung._value BOZ.beroz_art = "A" BOZ.beroz_berechtigungsstufe = MyTextBox6.Text BOZ.INSERT() BerechtigungsObjekte.LOAD_LIST() loadGruppen() cboAbteilung.SelectedIndex = 0 MyTextBox6.Text = "0" End Sub Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click If dgvObjekte.SelectedRows.Count = 0 Then Exit Sub 'Gruppe zuordnen If cboNiederlassung._value = String.Empty Then Exit Sub If Not IsNumeric(MyTextBox5.Text) Then Exit Sub Dim BOZ As New VERAG_PROG_ALLGEMEIN.cBerechtigungsObjekteZuordnung BOZ.beroz_beroId = dgvObjekte.SelectedRows(0).Cells("id").Value BOZ.beroz_bergrId = cboNiederlassung._value BOZ.beroz_art = "N" BOZ.beroz_berechtigungsstufe = MyTextBox5.Text BOZ.INSERT() BerechtigungsObjekte.LOAD_LIST() loadGruppen() cboNiederlassung.SelectedIndex = 0 MyTextBox5.Text = "0" End Sub Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click If dgvObjekte.SelectedRows.Count = 0 Then Exit Sub 'Benutzer zuordnen If MyComboBox3._value = String.Empty Then Exit Sub If Not IsNumeric(MyTextBox3.Text) Then Exit Sub Dim BOZ As New VERAG_PROG_ALLGEMEIN.cBerechtigungsObjekteZuordnung BOZ.beroz_beroId = dgvObjekte.SelectedRows(0).Cells("id").Value BOZ.beroz_bergrId = MyComboBox3._value BOZ.beroz_art = "B" BOZ.beroz_berechtigungsstufe = MyTextBox3.Text BOZ.INSERT() BerechtigungsObjekte.LOAD_LIST() loadGruppen() MyComboBox3.SelectedIndex = 0 MyTextBox3.Text = "0" End Sub Private Sub dgvGruppenBenutzer_KeyDown(sender As Object, e As KeyEventArgs) Handles dgvGruppenBenutzer.KeyDown If dgvGruppenBenutzer.SelectedRows.Count = 0 Then Exit Sub If e.KeyCode = Keys.Delete Then If vbYes = MsgBox("Möchten Sie die Zuordnung wirklich löschen?", vbYesNoCancel) Then Dim BOZ As New VERAG_PROG_ALLGEMEIN.cBerechtigungsObjekteZuordnung BOZ.beroz_id = dgvGruppenBenutzer.SelectedRows(0).Cells("dgvGrBen_id").Value BOZ.DELETE() BerechtigungsObjekte.LOAD_LIST() loadGruppen() End If End If End Sub Private Sub btnOK_Click(sender As Object, e As EventArgs) Handles btnOK.Click If MyComboBox1.Text = String.Empty Then Exit Sub If MyTextBox1.Text = String.Empty Then Exit Sub For Each b In BerechtigungsObjekte.LIST dgvObjekte.Rows.Add(b.bero_id, b.bero_bezeichnung, b.bero_art) If b.bero_bezeichnung = MyTextBox1.Text Then MsgBox("Das Objekt existiert bereits!") Exit Sub End If Next Dim BO As New VERAG_PROG_ALLGEMEIN.cBerechtigungsObjekte BO.bero_progId = progId BO.bero_bezeichnung = MyTextBox1.Text BO.bero_art = MyComboBox1.Text BO.INSERT() MyComboBox1.Text = String.Empty init() End Sub Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click If MyTextBox4.Text = String.Empty Then Exit Sub Dim BGR As New VERAG_PROG_ALLGEMEIN.cBerechtigungenGruppen BGR.bergr_progId = progId BGR.bergr_bezeichnung = MyTextBox4.Text BGR.INSERT() MyTextBox4.Text = "" init() End Sub Private Sub gdvGruppen_KeyDown(sender As Object, e As KeyEventArgs) Handles gdvGruppen.KeyDown If gdvGruppen.SelectedRows.Count = 0 Then Exit Sub If e.KeyCode = Keys.Delete Then If vbYes = MsgBox("Möchten Sie die Gruppe und alle verbundenen Zuordnungen wirklich löschen?", vbYesNoCancel) Then Dim BGR As New VERAG_PROG_ALLGEMEIN.cBerechtigungenGruppen BGR.bergr_id = gdvGruppen.SelectedRows(0).Cells("dgvGrp_id").Value BGR.DELETE() init() End If End If End Sub Private Sub dgvObjekte_KeyDown(sender As Object, e As KeyEventArgs) Handles dgvObjekte.KeyDown If dgvObjekte.SelectedRows.Count = 0 Then Exit Sub If e.KeyCode = Keys.Delete Then If vbYes = MsgBox("Möchten Sie das Objekt und alle verbundenen Zuordnungen wirklich löschen?", vbYesNoCancel) Then Dim BGR As New VERAG_PROG_ALLGEMEIN.cBerechtigungsObjekte BGR.bero_id = dgvObjekte.SelectedRows(0).Cells("id").Value BGR.DELETE() init() End If End If End Sub Private Sub gdvGruppen_CellContentDoubleClick(sender As Object, e As DataGridViewCellEventArgs) Handles gdvGruppen.CellContentDoubleClick, gdvGruppen.CellDoubleClick If gdvGruppen.SelectedRows.Count > 0 Then Dim f As New frmBerechtigungenUser() f.lbl.Text = "Benutzer in der Gruppe: " & gdvGruppen.SelectedRows(0).Cells("dgvGrp_bez").Value Dim dt = sql.loadDgvBySql("SELECT [mit_id],mit_username FROM [tblBerechtigungenBenutzerGruppenZuordnung] inner join tblMitarbeiter on mit_id=berbgz_mitId where [berbgz_bergrId]='" & gdvGruppen.SelectedRows(0).Cells("dgvGrp_id").Value & "' AND isnull(mit_username,'') <>'' ORDER BY mit_username", "ADMIN") f.gdvGruppen.Rows.Clear() If dt IsNot Nothing Then For Each r In dt.Rows f.gdvGruppen.Rows.Add(r("mit_id"), r("mit_username")) Next f.Show() Else MsgBox("Keine Benutzer gefunden!") End If End If End Sub Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click Dim f As New frmBerechtigungenUser() f.lbl.Text = "Freigeschaltene Benutzer: " & Me.codename ' MsgBox(Me.progId) Dim dt = sql.loadDgvBySql("SELECT [mit_id],[mit_username] FROM [ADMIN].[dbo].[tblBerProg] INNER JOIN tblMitarbeiter on mit_id= bepr_userId WHERE bepr_programm='" & Me.codename & "' AND [ber_allowed]=1 AND isnull(mit_username,'') <>''ORDER BY mit_username", "ADMIN") f.gdvGruppen.Rows.Clear() If dt IsNot Nothing Then For Each r In dt.Rows f.gdvGruppen.Rows.Add(r("mit_id"), r("mit_username")) Next f.Show() Else MsgBox("Keine Benutzer gefunden!") End If End Sub Private Sub MyTextBox7_KeyDown(sender As Object, e As KeyEventArgs) Handles txtSuche.KeyDown Dim sqladdon As String = "" If e.KeyCode = Keys.Enter Then If txtSuche.Text <> "" Then sqladdon &= " AND [bero_bezeichnung] like '%" & txtSuche.Text & "%'" End If init(sqladdon) End If End Sub Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click If dgvObjekte.SelectedRows.Count = 0 Then Exit Sub 'Gruppe zuordnen If cboFirma._value = String.Empty Then Exit Sub If Not IsNumeric(MyTextBox6.Text) Then Exit Sub Dim BOZ As New VERAG_PROG_ALLGEMEIN.cBerechtigungsObjekteZuordnung BOZ.beroz_beroId = dgvObjekte.SelectedRows(0).Cells("id").Value BOZ.beroz_bergrId = cboFirma._value BOZ.beroz_art = "F" BOZ.beroz_berechtigungsstufe = MyTextBox7.Text BOZ.INSERT() BerechtigungsObjekte.LOAD_LIST() loadGruppen() cboFirma.SelectedIndex = 0 MyTextBox6.Text = "0" End Sub End Class