From 708156ba0cf934b93d2ad1c1f23da2c4e1f4c459 Mon Sep 17 00:00:00 2001 From: SchreiberM Date: Wed, 17 Aug 2016 14:18:07 +0200 Subject: [PATCH] MS --- app/DD-Record-Organiser/ClassInit.vb | 2 +- .../ModuleMySettings.vb | 2 + .../My Project/Resources.Designer.vb | 10 ++ .../My Project/Resources.resx | 7 +- .../RecordOrganizer_RightManager.vbproj | 10 ++ .../112_RightArrowShort_Blue_24x24_72.png | Bin 0 -> 895 bytes .../frmCheckRightsEntity.Designer.vb | 6 +- .../frmCheckRightsEntity.vb | 5 +- .../frmReworkUsers.Designer.vb | 131 +++++++++++++++++ .../frmReworkUsers.resx | 123 ++++++++++++++++ .../frmReworkUsers.vb | 138 ++++++++++++++++++ .../frmStart.Designer.vb | 17 ++- app/RecordOrganizer_RightManager/frmStart.vb | 130 +++++++++-------- 13 files changed, 517 insertions(+), 64 deletions(-) create mode 100644 app/RecordOrganizer_RightManager/Resources/112_RightArrowShort_Blue_24x24_72.png create mode 100644 app/RecordOrganizer_RightManager/frmReworkUsers.Designer.vb create mode 100644 app/RecordOrganizer_RightManager/frmReworkUsers.resx create mode 100644 app/RecordOrganizer_RightManager/frmReworkUsers.vb diff --git a/app/DD-Record-Organiser/ClassInit.vb b/app/DD-Record-Organiser/ClassInit.vb index 3e011a1..3f1e9a2 100644 --- a/app/DD-Record-Organiser/ClassInit.vb +++ b/app/DD-Record-Organiser/ClassInit.vb @@ -206,7 +206,7 @@ Public Class ClassInit MsgBox("Unexpected Error in InitUserLogin: " & ex.Message, MsgBoxStyle.Critical) Return False End Try - + End Function End Class diff --git a/app/RecordOrganizer_RightManager/ModuleMySettings.vb b/app/RecordOrganizer_RightManager/ModuleMySettings.vb index 44533c3..8b3f9bd 100644 --- a/app/RecordOrganizer_RightManager/ModuleMySettings.vb +++ b/app/RecordOrganizer_RightManager/ModuleMySettings.vb @@ -6,4 +6,6 @@ Public USER_LANGUAGE As String = "de-DE" Public USER_DATE_FORMAT As String Public USER_WAN As Boolean = False + Public DT_WORK_USER_RIGHTS As DataTable + Public DT_SUPERVISOR_ENTITY As DataTable End Module diff --git a/app/RecordOrganizer_RightManager/My Project/Resources.Designer.vb b/app/RecordOrganizer_RightManager/My Project/Resources.Designer.vb index 8ed1c5b..324d584 100644 --- a/app/RecordOrganizer_RightManager/My Project/Resources.Designer.vb +++ b/app/RecordOrganizer_RightManager/My Project/Resources.Designer.vb @@ -60,6 +60,16 @@ Namespace My.Resources End Set End Property + ''' + ''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + ''' + Friend ReadOnly Property _112_RightArrowShort_Blue_24x24_72() As System.Drawing.Bitmap + Get + Dim obj As Object = ResourceManager.GetObject("112_RightArrowShort_Blue_24x24_72", resourceCulture) + Return CType(obj,System.Drawing.Bitmap) + End Get + End Property + ''' ''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. ''' diff --git a/app/RecordOrganizer_RightManager/My Project/Resources.resx b/app/RecordOrganizer_RightManager/My Project/Resources.resx index 1910540..fc54ec8 100644 --- a/app/RecordOrganizer_RightManager/My Project/Resources.resx +++ b/app/RecordOrganizer_RightManager/My Project/Resources.resx @@ -121,10 +121,13 @@ ..\Resources\cancel.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\folder_Closed_16xSM.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\cancel1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\folder_Closed_16xSM.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\112_RightArrowShort_Blue_24x24_72.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a \ No newline at end of file diff --git a/app/RecordOrganizer_RightManager/RecordOrganizer_RightManager.vbproj b/app/RecordOrganizer_RightManager/RecordOrganizer_RightManager.vbproj index 0faf5c8..a9d3c30 100644 --- a/app/RecordOrganizer_RightManager/RecordOrganizer_RightManager.vbproj +++ b/app/RecordOrganizer_RightManager/RecordOrganizer_RightManager.vbproj @@ -79,6 +79,12 @@ + + frmReworkUsers.vb + + + Form + frmCheckRightsEntity.vb @@ -110,6 +116,9 @@ + + frmReworkUsers.vb + frmCheckRightsEntity.vb @@ -146,6 +155,7 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + \ No newline at end of file diff --git a/app/RecordOrganizer_RightManager/frmReworkUsers.vb b/app/RecordOrganizer_RightManager/frmReworkUsers.vb new file mode 100644 index 0000000..67a4fdc --- /dev/null +++ b/app/RecordOrganizer_RightManager/frmReworkUsers.vb @@ -0,0 +1,138 @@ +Imports DD_Rights +Imports System.ComponentModel + +Public Class frmReworkUsers + Private DT_FILES As DataTable + Private _error As Boolean = False + Private GUID_WORKING As Integer = 0 + Private COUNT_ENTITIES As Integer = 0 + Private ENTITIES_WORKED As Integer = 0 + Private Sub frmCheckRightsEntity_Load(sender As Object, e As EventArgs) Handles Me.Load + Refresh_Combo() + End Sub + Sub Refresh_Combo() + Try + cmbUser.DataSource = Nothing + cmbUser.DataSource = DT_WORK_USER_RIGHTS + cmbUser.ValueMember = DT_WORK_USER_RIGHTS.Columns(0).ColumnName + cmbUser.DisplayMember = DT_WORK_USER_RIGHTS.Columns(1).ColumnName + Catch ex As Exception + MsgBox("Unexpected error in load Users List: " & vbNewLine & ex.Message, MsgBoxStyle.Critical) + End Try + End Sub + + Private Sub btnCheckRights_Click(sender As Object, e As EventArgs) Handles btnCheckRights.Click + Dim ECM_USER_ID As Integer + If cmbUser.SelectedIndex <> -1 Then + GUID_WORKING = 0 + Try + ENTITIES_WORKED = 0 + Try + ECM_USER_ID = ClassDatabase.Execute_Scalar(String.Format("SELECT USERID_FK_INT_ECM FROM TBDD_USER WHERE GUID = (SELECT USER_ID FROM TBPMO_USER_RIGHTS_JOBS WHERE GUID = {0} )", cmbUser.SelectedValue)) + Catch ex As Exception + MsgBox("No User ECM-ID found for selected User. Please inform Digital Data.", MsgBoxStyle.Exclamation) + Exit Sub + End Try + + + Dim sql = String.Format("SELECT ENTITY_ID FROM VWPMO_WD_DOC_SEARCH where DocID in (SELECT [dwObjectID] FROM VWPMO_WD_OBJECT_RIGHTS WHERE dwUserOrGroupID = {0}) GROUP BY ENTITY_ID", ECM_USER_ID) + Dim DT_ENTITY As DataTable = ClassDatabase.Return_Datatable(sql) + COUNT_ENTITIES = DT_ENTITY.Rows.Count + For Each row As DataRow In DT_ENTITY.Rows + sql = String.Format("SELECT * FROM VWPMO_WD_DOC_SEARCH where DocID in (SELECT [dwObjectID] FROM VWPMO_WD_OBJECT_RIGHTS WHERE dwUserOrGroupID = {0}) AND ENTITY_ID = {1}", ECM_USER_ID, row.Item("ENTITY_ID")) + DT_FILES = ClassDatabase.Return_Datatable(sql) + If DD_Rights.ClassRights.Init(row.Item("ENTITY_ID"), chklogging.Checked, DT_FILES.Rows.Count) = False Then + MsgBox("Could not init rights management. " & vbNewLine & "Check logfile", MsgBoxStyle.Critical) + Exit Sub + End If + 'BackgroundWorker erstellen ... + BW_RightsEntity = New BackgroundWorker + BW_RightsEntity.WorkerReportsProgress = True + ProgressBar1.Maximum = DT_FILES.Rows.Count + Me.ProgressBar1.Visible = True + GUID_WORKING = cmbUser.SelectedValue + AddHandler BW_RightsEntity.DoWork, AddressOf bw_DoWork + ENTITIES_WORKED += 1 + '.. und starten + BW_RightsEntity.RunWorkerAsync() + Next + + Catch ex As Exception + MsgBox("Unexpected error in starting backgroundworker: " & vbNewLine & ex.Message, MsgBoxStyle.Critical) + Me.ProgressBar1.Visible = False + End Try + End If + + + End Sub + + Private Sub BW_RightsEntity_ProgressChanged(sender As Object, e As ProgressChangedEventArgs) Handles BW_RightsEntity.ProgressChanged + Me.ProgressBar1.Value = e.ProgressPercentage + End Sub + Private Sub bw_DoWork(ByVal sender As Object, ByVal e As DoWorkEventArgs) + Dim worker As BackgroundWorker = CType(sender, BackgroundWorker) + _error = False + Dim i As Integer = 1 + 'Jede Datei einzeln verarbeiten + For Each row As DataRow In DT_FILES.Rows + If BW_RightsEntity.CancellationPending = True Then + e.Cancel = True + Exit For + Else + If DD_Rights.ClassRights.Collect_Users(row.Item("RECORD_ID")) = True Then + If DD_Rights.ClassRights.File_DeleteAndSetRight(row.Item("FULL_FILENAME"), True) Then + If DD_Rights.ClassRights.MSG_RESULT <> "" Then + MsgBox("Unexpected Errors in setting rights: " & vbNewLine & DD_Rights.ClassRights.MSG_RESULT, MsgBoxStyle.Exclamation) + _error = True + Else + + End If + Else + ClassLogger.Add(">> Unexpected Error in ClassRights.File_DeleteAndSetRight. Check Log.") + _error = True + End If + Else + _error = True + End If + If BW_RightsEntity.CancellationPending = False And BW_RightsEntity.IsBusy Then + BW_RightsEntity.ReportProgress(i) + End If + + i += 1 + End If + Next + DD_Rights.ClassRights.Finalize_SettingRights() + End Sub + + Private Sub btncancel_Click(sender As Object, e As EventArgs) Handles btncancel.Click + ENTITIES_WORKED -= 1 + ' Cancel the asynchronous operation. + Me.BW_RightsEntity.CancelAsync() + + End Sub + + Private Sub BW_RightsEntity_RunWorkerCompleted(sender As Object, e As RunWorkerCompletedEventArgs) Handles BW_RightsEntity.RunWorkerCompleted + Try + btncancel.Visible = False + ProgressBar1.Visible = False + If _error = False Then + If ENTITIES_WORKED = COUNT_ENTITIES Then + Dim upd = String.Format("UPDATE TBPMO_USER_RIGHTS_JOBS SET WORKED = 1, CHANGED_WHO = 'JOB-RIGHTS FINISHER' WHERE GUID = {0}", GUID_WORKING) + If ClassDatabase.Execute_non_Query(upd) = True Then + 'Überprüfen ob es User gibt die aktualisiert werden müssen + Dim Sql = "SELECT T.GUID,T1.USERNAME + 'Reason: ' + T.COMMENT AS USER_COMMENT FROM TBPMO_USER_RIGHTS_JOBS T, TBDD_USER T1 WHERE T.USER_ID = T1.GUID AND T.WORKED = 0" + DT_WORK_USER_RIGHTS = ClassDatabase.Return_Datatable(Sql) + Refresh_Combo() + End If + MsgBox("All rights of files belonging to entity/User were checked and refreshed successfully!", MsgBoxStyle.Information) + End If + + Else + MsgBox("Some errors occured while checking and setting the rights...please check the log!" & vbNewLine & ">> " & ClassRights.COUNT_FILES.ToString & " files schould be worked." & _ + ">> " & ClassRights.WORKED_FILES.ToString & " were worked successfully.", MsgBoxStyle.Exclamation) + End If + Catch ex As Exception + + End Try + End Sub +End Class \ No newline at end of file diff --git a/app/RecordOrganizer_RightManager/frmStart.Designer.vb b/app/RecordOrganizer_RightManager/frmStart.Designer.vb index 4d87fb2..be05dfb 100644 --- a/app/RecordOrganizer_RightManager/frmStart.Designer.vb +++ b/app/RecordOrganizer_RightManager/frmStart.Designer.vb @@ -24,6 +24,7 @@ Partial Class frmStart Private Sub InitializeComponent() Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmStart)) Me.Button1 = New System.Windows.Forms.Button() + Me.btnWorkUserRights = New System.Windows.Forms.Button() Me.Button2 = New System.Windows.Forms.Button() Me.SuspendLayout() ' @@ -32,11 +33,22 @@ Partial Class frmStart Me.Button1.Font = New System.Drawing.Font("Tahoma", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) Me.Button1.Location = New System.Drawing.Point(12, 12) Me.Button1.Name = "Button1" - Me.Button1.Size = New System.Drawing.Size(194, 45) + Me.Button1.Size = New System.Drawing.Size(250, 45) Me.Button1.TabIndex = 0 Me.Button1.Text = "Check Rights for Entity" Me.Button1.UseVisualStyleBackColor = True ' + 'btnWorkUserRights + ' + Me.btnWorkUserRights.Font = New System.Drawing.Font("Tahoma", 9.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.btnWorkUserRights.ForeColor = System.Drawing.Color.DarkRed + Me.btnWorkUserRights.Location = New System.Drawing.Point(12, 63) + Me.btnWorkUserRights.Name = "btnWorkUserRights" + Me.btnWorkUserRights.Size = New System.Drawing.Size(250, 45) + Me.btnWorkUserRights.TabIndex = 2 + Me.btnWorkUserRights.Text = "Work User" + Me.btnWorkUserRights.UseVisualStyleBackColor = True + ' 'Button2 ' Me.Button2.Image = Global.RecordOrganizer_RightManager.My.Resources.Resources.folder_Closed_16xSM @@ -54,16 +66,19 @@ Partial Class frmStart Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.ClientSize = New System.Drawing.Size(829, 402) + Me.Controls.Add(Me.btnWorkUserRights) Me.Controls.Add(Me.Button2) Me.Controls.Add(Me.Button1) Me.Font = New System.Drawing.Font("Tahoma", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon) Me.Name = "frmStart" + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen Me.Text = "Rights Manager" Me.ResumeLayout(False) End Sub Friend WithEvents Button1 As System.Windows.Forms.Button Friend WithEvents Button2 As System.Windows.Forms.Button + Friend WithEvents btnWorkUserRights As System.Windows.Forms.Button End Class diff --git a/app/RecordOrganizer_RightManager/frmStart.vb b/app/RecordOrganizer_RightManager/frmStart.vb index 5e6f4a6..e339aa8 100644 --- a/app/RecordOrganizer_RightManager/frmStart.vb +++ b/app/RecordOrganizer_RightManager/frmStart.vb @@ -1,82 +1,98 @@ Imports DD_Rights Public Class frmStart - Private Sub frmStart_Load(sender As Object, e As EventArgs) Handles Me.Load Try - Try - DD_Rights.ClassLogger.Init(Application.UserAppDataPath() & "\Log", Environment.UserName) - If DD_Rights.ClassDatabase.Init(My.Settings.MyConnectionString) = False Then - MsgBox("Error in Initializing Database. Please check log.", MsgBoxStyle.Critical) - Me.Close() - End If - Dim sql = String.Format("SELECT * FROM TBDD_USER WHERE (LOWER(USERNAME) = LOWER('{0}'))", Environment.UserName) - ClassLogger.Add(">> Login at: " & Now.ToString, False) - ClassLogger.Add(">> Username: " & Environment.UserName, False) - Dim USER_DT As DataTable = ClassDatabase.Return_Datatable(sql) - If USER_DT.Rows.Count = 0 Then - ClassLogger.Add(" - User '" & Environment.UserName & "' not listed in Useradminsitration!", False) - 'MsgBox("Achtung: Sie sind nicht in der Userverwaltung hinterlegt." & vbNewLine & "Bitte setzen Sie sich mit dem Systembetreuer in Verbindung!", MsgBoxStyle.Critical, "Achtung:") - 'Me.Close() - Dim msg = String.Format("You are not listed in the Useradministration." & vbNewLine & "Please contact the admin.") - MsgBox(msg, MsgBoxStyle.Exclamation) - Me.Close() - Else - USER_GUID = USER_DT.Rows(0).Item("GUID") - USERID_FK_INT_ECM = USER_DT.Rows(0).Item("USERID_FK_INT_ECM") - USER_WAN = USER_DT.Rows(0).Item("WAN_ENVIRONMENT") 'ClassDatabase.Execute_Scalar("SELECT WAN_ENVIRONMENT FROM TBDD_USER WHERE GUID = " & USER_GUID, False) - USER_LANGUAGE = USER_DT.Rows(0).Item("LANGUAGE") - USER_DATE_FORMAT = USER_DT.Rows(0).Item("DATE_FORMAT") + DD_Rights.ClassLogger.Init(Application.UserAppDataPath() & "\Log", Environment.UserName) + If DD_Rights.ClassDatabase.Init(My.Settings.MyConnectionString) = False Then + MsgBox("Error in Initializing Database. Please check log.", MsgBoxStyle.Critical) + Me.Close() + End If + Dim sql = String.Format("SELECT * FROM TBDD_USER WHERE (LOWER(USERNAME) = LOWER('{0}'))", Environment.UserName) + ClassLogger.Add(">> Login at: " & Now.ToString, False) + ClassLogger.Add(">> Username: " & Environment.UserName, False) + Dim USER_DT As DataTable = ClassDatabase.Return_Datatable(sql) + - 'USER_LANGUAGE = ClassDatabase.Execute_Scalar("SELECT LANGUAGE FROM TBDD_USER WHERE GUID = " & USER_GUID, False) - Dim DT_CLIENT_USER As DataTable = ClassDatabase.Return_Datatable("SELECT CLIENT_ID FROM TBDD_CLIENT_USER WHERE USER_ID = " & USER_GUID) - 'Dim i As Integer = 0 - 'For Each row As DataRow In DT_CLIENT_USER.Rows - ' If i = 0 Then - ' USER_CLIENTS_COMMA_SEPERATED = row.Item(0).ToString - ' Else - ' USER_CLIENTS_COMMA_SEPERATED = USER_CLIENTS_COMMA_SEPERATED & "," & row.Item(0).ToString - ' End If - ' i += 1 + If USER_DT.Rows.Count = 0 Then + ClassLogger.Add(" - User '" & Environment.UserName & "' not listed in Useradminsitration!", False) + 'MsgBox("Achtung: Sie sind nicht in der Userverwaltung hinterlegt." & vbNewLine & "Bitte setzen Sie sich mit dem Systembetreuer in Verbindung!", MsgBoxStyle.Critical, "Achtung:") + 'Me.Close() + Dim msg = String.Format("You are not listed in the Useradministration." & vbNewLine & "Please contact the admin.") + MsgBox(msg, MsgBoxStyle.Exclamation) + Me.Close() + Else + USER_GUID = USER_DT.Rows(0).Item("GUID") + USERID_FK_INT_ECM = USER_DT.Rows(0).Item("USERID_FK_INT_ECM") + USER_WAN = USER_DT.Rows(0).Item("WAN_ENVIRONMENT") 'ClassDatabase.Execute_Scalar("SELECT WAN_ENVIRONMENT FROM TBDD_USER WHERE GUID = " & USER_GUID, False) + USER_LANGUAGE = USER_DT.Rows(0).Item("LANGUAGE") + USER_DATE_FORMAT = USER_DT.Rows(0).Item("DATE_FORMAT") + USER_IS_ADMIN = USER_DT.Rows(0).Item("RECORD_ADMIN") + 'USER_LANGUAGE = ClassDatabase.Execute_Scalar("SELECT LANGUAGE FROM TBDD_USER WHERE GUID = " & USER_GUID, False) + Dim DT_CLIENT_USER As DataTable = ClassDatabase.Return_Datatable("SELECT CLIENT_ID FROM TBDD_CLIENT_USER WHERE USER_ID = " & USER_GUID) + 'Dim i As Integer = 0 + 'For Each row As DataRow In DT_CLIENT_USER.Rows + ' If i = 0 Then + ' USER_CLIENTS_COMMA_SEPERATED = row.Item(0).ToString + ' Else + ' USER_CLIENTS_COMMA_SEPERATED = USER_CLIENTS_COMMA_SEPERATED & "," & row.Item(0).ToString + ' End If + ' i += 1 - 'Next + 'Next - Dim Right_RO As Boolean = USER_DT.Rows(0).Item("MODULE_RECORD_ORG") - If Right_RO = False Then - ClassLogger.Add(" - User: " & Environment.UserName & " nicht für Modul freigegben!", False) - 'MsgBox("Achtung: Sie sind nicht für die Nutzung dieses Moduls freigeschaltet." & vbNewLine & "Bitte setzen Sie sich mit dem Systembetreuer in Verbindung!", MsgBoxStyle.Critical, "Achtung:") - Dim msg = String.Format("Sie sind nicht für die Nutzung dieses Moduls freigeschaltet." & vbNewLine & "Bitte setzen Sie sich mit dem Systembetreuer in Verbindung!") + Dim Right_RO As Boolean = USER_DT.Rows(0).Item("MODULE_RECORD_ORG") + If Right_RO = False Then + ClassLogger.Add(" - User: " & Environment.UserName & " nicht für Modul freigegben!", False) + 'MsgBox("Achtung: Sie sind nicht für die Nutzung dieses Moduls freigeschaltet." & vbNewLine & "Bitte setzen Sie sich mit dem Systembetreuer in Verbindung!", MsgBoxStyle.Critical, "Achtung:") + Dim msg = String.Format("Sie sind nicht für die Nutzung dieses Moduls freigeschaltet." & vbNewLine & "Bitte setzen Sie sich mit dem Systembetreuer in Verbindung!") + If USER_LANGUAGE <> "de-DE" Then + msg = String.Format("You are not authorized for using this module." & vbNewLine & "Please contact the admin.") + End If + MsgBox(msg, MsgBoxStyle.Exclamation) + Me.Close() + Else + sql = String.Format("SELECT * FROM TBPMO_ENTITY_SUPERVISOR WHERE USER_ID = {0}", USER_GUID) + Dim DT As DataTable = ClassDatabase.Return_Datatable(sql) + If DT.Rows.Count > 0 Then + DT_SUPERVISOR_ENTITY = DT + MsgBox("As Supervisor You are only allowed to change entity-related rights!", MsgBoxStyle.Information) + End If - If USER_LANGUAGE <> "de-DE" Then - msg = String.Format("You are not authorized for using this module." & vbNewLine & "Please contact the admin.") - End If + If USER_IS_ADMIN = False And DT.Rows.Count = 0 Then + Dim msg = String.Format("Sorry You are not an ADDI-Admin!") MsgBox(msg, MsgBoxStyle.Exclamation) Me.Close() + End If + + 'Überprüfen ob es User gibt die aktualisiert werden müssen + sql = "SELECT T.GUID,T1.USERNAME + 'Reason: ' + T.COMMENT AS USER_COMMENT FROM TBPMO_USER_RIGHTS_JOBS T, TBDD_USER T1 WHERE T.USER_ID = T1.GUID AND T.WORKED = 0" + DT_WORK_USER_RIGHTS = ClassDatabase.Return_Datatable(sql) + If DT_WORK_USER_RIGHTS.Rows.Count > 0 Then + btnWorkUserRights.Text = "Userrelations were changed." & vbNewLine & DT_WORK_USER_RIGHTS.Rows.Count.ToString & " Users need to be refreshed!" + btnWorkUserRights.Visible = True Else - sql = String.Format("SELECT RECORD_ADMIN FROM TBDD_USER WHERE (LOWER(USERNAME) = LOWER('{0}'))", Environment.UserName) - USER_IS_ADMIN = ClassDatabase.Execute_Scalar(sql) - If USER_IS_ADMIN = False Then - Dim msg = String.Format("Sorry You are not an ADDI-Admin!") - MsgBox(msg, MsgBoxStyle.Exclamation) - Me.Close() - End If + btnWorkUserRights.Visible = False End If + End If - Catch ex As Exception - ClassLogger.Add("Unexpected Error in InitUserLogin: " & ex.Message, True) - MsgBox("Unexpected Error in InitUserLogin: " & ex.Message, MsgBoxStyle.Critical) - End Try + End If Catch ex As Exception - + ClassLogger.Add("Unexpected Error in InitUserLogin: " & ex.Message, True) + MsgBox("Unexpected Error in InitUserLogin: " & ex.Message, MsgBoxStyle.Critical) End Try End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click - Me.Visible = False + ' Me.Visible = False frmCheckRightsEntity.ShowDialog() - Me.Visible = True + 'Me.Visible = True End Sub Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click Process.Start(ClassLogger.DateiSpeicherort) End Sub + + Private Sub btnWorkUserRights_Click(sender As Object, e As EventArgs) Handles btnWorkUserRights.Click + frmReworkUsers.ShowDialog() + End Sub End Class