ms
This commit is contained in:
@@ -19,7 +19,7 @@ Public Class frmReworkUsers
|
||||
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
|
||||
cmbUser.DisplayMember = DT_WORK_USER_RIGHTS.Columns(2).ColumnName
|
||||
If DT_WORK_USER_RIGHTS.Rows.Count = 0 Then
|
||||
MsgBox("No more Users to rework. Form will be closed!", MsgBoxStyle.Information)
|
||||
Me.Close()
|
||||
@@ -34,6 +34,19 @@ Public Class frmReworkUsers
|
||||
If cmbUser.SelectedIndex <> -1 Then
|
||||
GUID_WORKING = 0
|
||||
Try
|
||||
Dim USER_ID As Integer
|
||||
Dim expression As String
|
||||
expression = "TYPE_NODE = 0"
|
||||
Dim foundRowsLevel0() As DataRow
|
||||
' Use the Select method to find all rows matching the filter.
|
||||
foundRowsLevel0 = DT_WORK_USER_RIGHTS.Select(expression)
|
||||
Dim i As Integer
|
||||
' For each row
|
||||
For i = 0 To foundRowsLevel0.GetUpperBound(0)
|
||||
USER_ID = foundRowsLevel0(i)("USER_ID")
|
||||
Next
|
||||
|
||||
|
||||
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))
|
||||
@@ -46,11 +59,20 @@ Public Class frmReworkUsers
|
||||
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
|
||||
If DT_ENTITY.Rows.Count = 0 Then
|
||||
MsgBox("No files found for User. Job will be terminated!")
|
||||
Finish_Job()
|
||||
Exit Sub
|
||||
End If
|
||||
For Each row As DataRow In DT_ENTITY.Rows
|
||||
CURR_ENTITY = row.Item("ENTITY_ID")
|
||||
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 DT_FILES.Rows.Count = 0 Then
|
||||
MsgBox("No files found for User. Job will be terminated!")
|
||||
Finish_Job()
|
||||
Exit Sub
|
||||
End If
|
||||
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
|
||||
@@ -95,7 +117,7 @@ Public Class frmReworkUsers
|
||||
e.Cancel = True
|
||||
Exit For
|
||||
Else
|
||||
If DD_Rights.ClassRights.Collect_Users(row.Item("RECORD_ID")) = True Then
|
||||
If DD_Rights.ClassRights.Collect_Users(row.Item("RECORD_ID"), row.Item("ENTITY_ID")) = True Then
|
||||
WorkingFiles += 1
|
||||
If DD_Rights.ClassRights.File_DeleteAndSetRight(row.Item("DocID"), row.Item("FULL_FILENAME"), True) Then
|
||||
If DD_Rights.ClassRights.MSG_RESULT <> "" Then
|
||||
@@ -135,13 +157,7 @@ Public Class frmReworkUsers
|
||||
lblstate.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 = SQL_USER_RIGHTS_CHANGED
|
||||
DT_WORK_USER_RIGHTS = ClassDatabase.Return_Datatable(Sql)
|
||||
Refresh_Combo()
|
||||
End If
|
||||
Finish_Job()
|
||||
MsgBox("All rights of files belonging to entity/User were checked and refreshed successfully!", MsgBoxStyle.Information)
|
||||
End If
|
||||
|
||||
@@ -151,5 +167,15 @@ Public Class frmReworkUsers
|
||||
Catch ex As Exception
|
||||
|
||||
End Try
|
||||
|
||||
End Sub
|
||||
Private Sub Finish_Job()
|
||||
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 = SQL_USER_RIGHTS_CHANGED
|
||||
DT_WORK_USER_RIGHTS = ClassDatabase.Return_Datatable(Sql)
|
||||
Refresh_Combo()
|
||||
End If
|
||||
End Sub
|
||||
End Class
|
||||
Reference in New Issue
Block a user