Files
RecordOrganizer/app/RecordOrganizer_RightManager/frmUsersReworkRights.vb
SchreiberM fc9f391307 MS
2016-11-23 10:24:21 +01:00

130 lines
5.7 KiB
VB.net

Imports DD_Rights
Imports System.ComponentModel
Public Class frmUsersReworkRights
Private _error As Boolean = False
Private Sub frmCheckRightsEntity_Load(sender As Object, e As EventArgs) Handles Me.Load
lblstate.Visible = False
Refresh_Users()
End Sub
Sub Refresh_Users()
Try
Dim Sql = String.Format("SELECT * FROM TBDD_USER WHERE MODULE_RECORD_ORG = 1 ORDER By USERNAME")
Dim DT_USER = ClassDatabase.Return_Datatable(Sql)
Try
MyDataset.TBAD_Users.Clear()
For Each row As DataRow In DT_USER.Rows
Dim newUserRow As MyDataset.TBAD_UsersRow
newUserRow = MyDataset.TBAD_Users.NewTBAD_UsersRow
newUserRow.Username = row.Item("USERNAME")
newUserRow.Surname = row.Item("NAME")
newUserRow.Prename = row.Item("PRENAME")
Try
newUserRow.Email = row.Item("EMAIL")
Catch ex As Exception
newUserRow.Email = ""
End Try
newUserRow.ID = row.Item("GUID")
MyDataset.TBAD_Users.Rows.Add(newUserRow)
' chklbxUserForGroup.Items.Add(New MyListBoxItem() With {.Text = row.Item(1), .ExtraData = row.Item(0)})
Next
Catch ex As Exception
MsgBox("Error Load_Users for menues:" & vbNewLine & ex.Message)
End Try
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 Count As Integer
For Each row As DataRow In MyDataset.TBAD_Users.Rows
If row.Item(0) = CBool(True) Then
Count += 1
End If
Next
If Count > 0 Then
Try
Me.Cursor = Cursors.WaitCursor
''BackgroundWorker erstellen ...
BW_RightsEntity = New BackgroundWorker
BW_RightsEntity.WorkerReportsProgress = True
ProgressBar1.Maximum = Count + 1
lblstate.Visible = True
lblstate.Text = "Background Worker started...."
ProgressPanel1.Description = "Preparing Right-Collector...."
Me.ProgressBar1.Visible = True
ProgressPanel1.Visible = True
btnCheckRights.Enabled = False
btncancel.Visible = True
AddHandler BW_RightsEntity.DoWork, AddressOf bw_DoWork
BW_RightsEntity.ReportProgress(1)
'.. und starten
BW_RightsEntity.RunWorkerAsync()
Catch ex As Exception
MsgBox("Unexpected error in starting backgroundworker: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Me.ProgressBar1.Visible = False
End Try
End If
Me.Cursor = Cursors.Default
End Sub
Private Sub BW_RightsEntity_ProgressChanged(sender As Object, e As ProgressChangedEventArgs) Handles BW_RightsEntity.ProgressChanged
Me.ProgressBar1.Value = e.ProgressPercentage
ProgressPanel1.Description = "Collecting rights for user...."
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
For Each row As DataRow In MyDataset.TBAD_Users.Rows
If row.Item(0) = CBool(True) Then
' ProgressPanel1.Description = "Collecting rights for user: " & row.Item("USERNAME")
Dim proc = String.Format("EXEC PRPMO_RIGHTS_SERVICE_CHECK_USER {0}, '{1}'", row.Item(5), Environment.UserName)
If ClassDatabase.Execute_non_Query(proc) = False Then
MsgBox("Unexpected Error in Executing rightprocedure - Check the log!", MsgBoxStyle.Critical)
_error = True
BW_RightsEntity.ReportProgress(+1)
Exit For
Else
Dim del = String.Format("DELETE FROM TBPMO_USER_RIGHTS_JOBS WHERE USER_ID = {0}", row.Item(5))
ClassDatabase.Execute_non_Query(del)
End If
End If
BW_RightsEntity.ReportProgress(+1)
Next
End Sub
Private Sub btncancel_Click(sender As Object, e As EventArgs) Handles btncancel.Click
' 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
lblstate.Visible = False
btnCheckRights.Enabled = True
btncancel.Visible = False
ProgressPanel1.Visible = False
If _error = False Then
MsgBox("All rights of files belonging to User were checked and transmitted to the server!" & vbNewLine & "The setting of the rights might take up to 10 minutes!", MsgBoxStyle.Information)
Else
MsgBox("Some errors occured while checking and transmitting the rights...please check the log!", MsgBoxStyle.Exclamation)
End If
Catch ex As Exception
btnCheckRights.Enabled = True
btncancel.Visible = False
ProgressPanel1.Visible = False
End Try
End Sub
End Class