diff --git a/app/DD_PM_WINDREAM/ClassAllgemeineFunktionen.vb b/app/DD_PM_WINDREAM/ClassAllgemeineFunktionen.vb
index 964f267..8bbb184 100644
--- a/app/DD_PM_WINDREAM/ClassAllgemeineFunktionen.vb
+++ b/app/DD_PM_WINDREAM/ClassAllgemeineFunktionen.vb
@@ -43,10 +43,23 @@ Public Class ClassAllgemeineFunktionen
If LoginorOut = "LOGIN" Then
Sql = String.Format("INSERT INTO TBDD_USER_MODULE_LOG_IN (USER_ID,CLIENT_ID,MODULE,VERSION_CLIENT,MACHINE_NAME) VALUES ({0},{1},'Process-Manager','{2}','{3}')", USER_ID, 1, My.Application.Info.Version.ToString, Environment.MachineName)
Else
- Sql = "DELETE FROM TBDD_USER_MODULE_LOG_IN WHERE USER_ID = " & USER_ID & " AND UPPER(MODULE) = UPPER('Process-Manager')"
+ Sql = $"DELETE FROM TBDD_USER_MODULE_LOG_IN WHERE USER_ID = {USER_ID} AND UPPER(MODULE) = UPPER('Process-Manager') AND UPPER(MACHINE_NAME) = UPPER('{Environment.MachineName}')"
End If
- If ClassDatabase.Execute_non_Query(Sql, True) = True Then
- LOGGER.Debug("User logged in....")
+ If ClassDatabase.Execute_non_Query(Sql, "LOGIN/OUT") = True Then
+ Try
+ If LoginorOut = "LOGOUT" Then
+ If INACTIVITYRecognized = True Then
+ Dim oSQL As String = $"UPDATE TBDD_USER_LOGIN_OUT SET COMMENT = 'Inactivity Detected' WHERE GUID = (SELECT MAX(GUID) FROM TBDD_USER_LOGIN_OUT
+ WHERE USER_ID = {USER_ID} AND MODULE = 'Process-Manager' AND MACHINE_NAME = '{Environment.MachineName}')"
+ ClassDatabase.Execute_non_Query(Sql, "Inactivity insert")
+ End If
+ End If
+ Catch ex As Exception
+ LOGGER.Warn($"Unexpected Error in logging Inactivity [{ex.Message}] ")
+ End Try
+
+
+ LOGGER.Debug($"User {LoginorOut} successfully!")
Return True
Else
LOGGER.Info("User could not be logged in/out....")
diff --git a/app/DD_PM_WINDREAM/ClassParamRefresh.vb b/app/DD_PM_WINDREAM/ClassParamRefresh.vb
index f38f4b0..4b16652 100644
--- a/app/DD_PM_WINDREAM/ClassParamRefresh.vb
+++ b/app/DD_PM_WINDREAM/ClassParamRefresh.vb
@@ -70,6 +70,13 @@
ElseIf oMode.StartsWith("PM.CONV_IDENTIFICATION") Then
Dim oIdent = oMode.Replace("PM.CONV_IDENTIFICATION=", "")
CONV_IDENTIFICATION = oIdent
+ ElseIf oMode.StartsWith("PM.INACTIVITY_DURATION") Then
+ Dim oInactivityDuration = oMode.Replace("PM.INACTIVITY_DURATION=", "")
+ Try
+ INACTIVITY_DURATION = CInt(oInactivityDuration)
+ Catch ex As Exception
+ INACTIVITY_DURATION = 0
+ End Try
Else
LOGGER.Info($"Wrong oMode: {oMode}")
End If
diff --git a/app/DD_PM_WINDREAM/DD_PM_WINDREAM.vbproj b/app/DD_PM_WINDREAM/DD_PM_WINDREAM.vbproj
index b583cab..03b212d 100644
--- a/app/DD_PM_WINDREAM/DD_PM_WINDREAM.vbproj
+++ b/app/DD_PM_WINDREAM/DD_PM_WINDREAM.vbproj
@@ -43,7 +43,7 @@
42016,41999,42017,42018,42019,42032,42036,42020,42021,42022
false
UnusedCode.ruleset
- true
+ false
x86
diff --git a/app/DD_PM_WINDREAM/ModuleRuntimeVariables.vb b/app/DD_PM_WINDREAM/ModuleRuntimeVariables.vb
index 3707f44..7d0d34c 100644
--- a/app/DD_PM_WINDREAM/ModuleRuntimeVariables.vb
+++ b/app/DD_PM_WINDREAM/ModuleRuntimeVariables.vb
@@ -72,6 +72,8 @@ Module ModuleRuntimeVariables
Public ADDITIONAL_TITLE As String = ""
Public CONV_IDENTIFICATION As String = "Username"
Public POPUP_REMINDER_ACTIVE As Boolean = True
+ Public INACTIVITY_DURATION As Integer = 0
+ Public INACTIVITYRecognized As Boolean = False
Public LICENSE_COUNT As Integer = 0
Public LICENSE_EXPIRED As Boolean = False
diff --git a/app/DD_PM_WINDREAM/frmMain.Designer.vb b/app/DD_PM_WINDREAM/frmMain.Designer.vb
index 6f39c1d..e2f8043 100644
--- a/app/DD_PM_WINDREAM/frmMain.Designer.vb
+++ b/app/DD_PM_WINDREAM/frmMain.Designer.vb
@@ -175,6 +175,8 @@ Partial Class frmMain
Me.PrintPreviewBarCheckItem18 = New DevExpress.XtraPrinting.Preview.PrintPreviewBarCheckItem()
Me.PrintPreviewBarCheckItem19 = New DevExpress.XtraPrinting.Preview.PrintPreviewBarCheckItem()
Me.XtraSaveFileDialog1 = New DevExpress.XtraEditors.XtraSaveFileDialog(Me.components)
+ Me.TimerInactivity = New System.Windows.Forms.Timer(Me.components)
+ Me.Timer1 = New System.Windows.Forms.Timer(Me.components)
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.TBPM_PROFILEBindingSource, System.ComponentModel.ISupportInitialize).BeginInit()
Me.Panel1.SuspendLayout()
@@ -1355,6 +1357,9 @@ Partial Class frmMain
'
Me.XtraSaveFileDialog1.FileName = "XtraSaveFileDialog1"
'
+ 'TimerInactivity
+ '
+ '
'frmMain
'
Me.Appearance.Options.UseFont = True
@@ -1551,4 +1556,6 @@ Partial Class frmMain
Friend WithEvents tslblObjectCount As ToolStripLabel
Friend WithEvents ExportierenToolStripMenuItem As ToolStripMenuItem
Friend WithEvents XtraSaveFileDialog1 As DevExpress.XtraEditors.XtraSaveFileDialog
+ Friend WithEvents TimerInactivity As Timer
+ Friend WithEvents Timer1 As Timer
End Class
diff --git a/app/DD_PM_WINDREAM/frmMain.resx b/app/DD_PM_WINDREAM/frmMain.resx
index 58673c6..d0ccbd2 100644
--- a/app/DD_PM_WINDREAM/frmMain.resx
+++ b/app/DD_PM_WINDREAM/frmMain.resx
@@ -125,7 +125,7 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADw
- CAAAAk1TRnQBSQFMAgEBAgEAAcQBBgHEAQYBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
+ CAAAAk1TRnQBSQFMAgEBAgEAAdQBBgHUAQYBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
@@ -266,6 +266,12 @@
266, 6
+
+ 200, 22
+
+
+ Datei als Link versenden
+
269, 26
@@ -604,12 +610,6 @@
3
-
- 200, 22
-
-
- Datei als Link versenden
-
908, 17
@@ -1327,6 +1327,18 @@
0, 0
+
+ Allgemein
+
+
+ Funktionen
+
+
+ Verwaltung
+
+
+ Grundeinstellungen
+
Start
@@ -1363,18 +1375,6 @@
5
-
- Allgemein
-
-
- Funktionen
-
-
- Verwaltung
-
-
- Grundeinstellungen
-
RibbonPage2
@@ -2498,6 +2498,18 @@
DevExpress.XtraEditors.XtraSaveFileDialog, DevExpress.XtraDialogs.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ TimerInactivity
+
+
+ System.Windows.Forms.Timer, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Timer1
+
+
+ System.Windows.Forms.Timer, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
frmMain
@@ -2710,9 +2722,6 @@
&Ansicht
-
- &Hintergrund
-
&Seiten Layout
@@ -2725,6 +2734,9 @@
Bars
+
+ &Hintergrund
+
PDF Dokument
@@ -2842,4 +2854,10 @@
919, 134
+
+ 1078, 134
+
+
+ 17, 173
+
\ No newline at end of file
diff --git a/app/DD_PM_WINDREAM/frmMain.vb b/app/DD_PM_WINDREAM/frmMain.vb
index c98a258..7859cbb 100644
--- a/app/DD_PM_WINDREAM/frmMain.vb
+++ b/app/DD_PM_WINDREAM/frmMain.vb
@@ -199,9 +199,11 @@ Public Class frmMain
bbtniMonitor.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
End If
Check_Timer_Notification()
+ Check_Timer_Inactivity()
formShown = True
Restore_Form_Position()
+
If IDB_ACTIVE = False And ERROR_STATE = "" Then
Try
If Init_windream() = True Then
@@ -254,6 +256,22 @@ Public Class frmMain
End Try
+ End Sub
+ Public Sub Check_Timer_Inactivity()
+ Try
+ If INACTIVITY_DURATION <> 0 Then
+ TimerInactivity.Stop()
+ TimerInactivity.Interval = INACTIVITY_DURATION * 60000
+ TimerInactivity.Start()
+ Else
+ TimerInactivity.Enabled = False
+ TimerInactivity.Stop()
+ End If
+ Catch ex As Exception
+ LOGGER.Error(ex)
+
+ End Try
+
End Sub
Sub Restore_Form_Position()
Try
@@ -1192,8 +1210,6 @@ Public Class frmMain
CURRENT_DOC_GUID = 0
CURRENT_ProfilGUID = oHitProfilID
LOGGER.Debug($"Item_Scope: hitInfo.InGroupRow...oHitProfilID [{oHitProfilID}]")
-
-
Load_Profil_from_Grid(oHitProfilID)
ElseIf hitInfo.InDataRow Then
@@ -2222,4 +2238,21 @@ Public Class frmMain
End If
End Sub
+
+ Private Sub TimerInactivity_Tick(sender As Object, e As EventArgs) Handles TimerInactivity.Tick
+ If Application.OpenForms().OfType(Of frmValidator).Any Then
+ Check_Timer_Inactivity()
+ Exit Sub
+ End If
+ If Application.OpenForms().OfType(Of frmAdministration).Any Then
+ Check_Timer_Inactivity()
+ Exit Sub
+ End If
+ Try
+ INACTIVITYRecognized = True
+ Application.Exit()
+ Catch ex As Exception
+ LOGGER.Error(ex.Message)
+ End Try
+ End Sub
End Class
\ No newline at end of file
diff --git a/app/DD_PM_WINDREAM/frmMonitor.vb b/app/DD_PM_WINDREAM/frmMonitor.vb
index a483274..68abd84 100644
--- a/app/DD_PM_WINDREAM/frmMonitor.vb
+++ b/app/DD_PM_WINDREAM/frmMonitor.vb
@@ -166,7 +166,6 @@ Public Class frmMonitor
End Sub
Sub Load_Grid_Data()
Try
- Application.
FormShown = False
Dim oSQL = "SELECT * FROM TBPM_MONITOR_KONFIG"
DT_MONITOR_KONFIG = ClassDatabase.Return_Datatable(oSQL, "Monitor-Load_Grid_Data1")
diff --git a/app/DD_PM_WINDREAM/frmValidator.vb b/app/DD_PM_WINDREAM/frmValidator.vb
index 84c4214..2d3b02f 100644
--- a/app/DD_PM_WINDREAM/frmValidator.vb
+++ b/app/DD_PM_WINDREAM/frmValidator.vb
@@ -410,8 +410,10 @@ Public Class frmValidator
End Try
My.Settings.frmValidatorSize = Me.Size
My.Settings.Save()
+ If INACTIVITY_DURATION <> 0 Then frmMain.Check_Timer_Inactivity()
+
Try
- _frmValidatorSearch.Close()
+ _frmValidatorSearch.Close()
Catch ex As Exception
End Try