1097 lines
45 KiB
VB.net

Imports System.Globalization
Imports System.Net
Imports System.Threading
'Imports DD_LIB_Standards'
Imports DevExpress.LookAndFeel
Imports DevExpress.XtraBars
Imports DevExpress.XtraBars.Ribbon
Imports DevExpress.XtraBars.Ribbon.ViewInfo
Imports DevExpress.XtraNavBar
Public Class frmMain
Dim strIPAddress As String
Public Shared TIMER_SCAN As New System.Windows.Forms.Timer
Public TIMER_INACTIVITY As ClassInactivity
Public Sub OpenRibbon()
ribbonMain.Minimized = False
End Sub
Public Sub CloseRibbon()
ribbonMain.Minimized = True
End Sub
Private Shared Sub Scan_TickHandler(sender As Object, e As EventArgs)
Try
If ClassFolderWatcher.NEW_FILES = False Then Exit Sub
ClassFolderWatcher.Check_Scan_Files()
Dim open As Boolean = False
If Not IsNothing(CURRENT_SCAN_TABLE) Then
If CURRENT_SCAN_TABLE.Rows.Count > 0 Then
For Each form In My.Application.OpenForms
If (form.name = frmScanFiles.Name) Then
'form is loaded so can do work
'if you need to check wether it is actually visible
If form.Visible Then
open = True
'do work when visible
If My.Settings.User_InBoxScan_NotinFront = False Then
frmScanFiles.BringToFront()
End If
Else
End If
End If
Next
If open = False Then
Dim frm As New frmScanFiles
frm = frmScanFiles.Instance()
frm.Show()
End If
End If
If CURRENT_SCAN_TABLE.Rows.Count = 0 And open = True Then
frmScanFiles.Close()
End If
ClassFolderWatcher.NEW_FILES = False
End If
Catch ex As Exception
MsgBox("Unexpected Error in Scan_TickHandler:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
TIMER_SCAN.Enabled = False
End Try
End Sub
Private Sub frmMain_Load(sender As Object, e As EventArgs) Handles Me.Load
' Referenz zu frmMain speichern
MAIN_FORM = Me
If ERROR_INIT <> "INVALID USER" Then
Try
' Form Titel setzen
ClassWindowLocation.LoadFormLocationSize(Me, 1, CURRENT_SCREEN_ID, "frmMain")
Dim i = My.Application.UICulture.ToString()
UserLookAndFeel.Default.SetSkinStyle(CONFIG.Config.FormsDesign)
' GetIPv4Address()
'Dim splash As New frmSplash()
'splash.ShowDialog()
' MainForm Hintergrund laden
SetBackgroundImage()
Me.Text = Application.ProductName
LabelVersion.Caption = String.Format("Version {0}", My.Application.Info.Version.ToString)
StatusVersionDB.Caption = "DB-Version: " & DBVERSION
LabelUser.Caption = USER_USERNAME
'IP-Adresse-Auslesen
Dim Addresslist() As IPAddress =
Dns.GetHostEntry(Dns.GetHostName()).AddressList
Dim IPs As IPAddress
For Each IPs In Addresslist
'Aktuelle Machine
LOGGER.Info("" & My.Computer.Name & " - IP: " & IPs.ToString)
LabelMachine.Caption = My.Computer.Name & " - IP: " & IPs.ToString
Next IPs
LabelLanguage.Caption = "Language: " & USER_LANGUAGE
Load_Connection_Dep_Data()
Display_ConString
'Wenn Argumente übergeben wurden, wird Formular geladen und zu record gesprungen
ClassJumpRecord.ParseArgs()
If Task_Popup_minutes <> 0 Then
TimerTasks.Interval = Task_Popup_minutes * 60000
End If
If USER_PERSONIFIED_TEST = True Then
StatusPersonifiedLogin.Visibility = BarItemVisibility.Always
Else
StatusPersonifiedLogin.Visibility = BarItemVisibility.Never
End If
TimerInformation.Start()
Catch ex As Exception
MsgBox("Error in Load Form:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
LOGGER.Debug("FormLoad finished!")
'Proxy_Server_Controls()
CONN_Manager()
End If
End Sub
Sub CONN_Manager()
Try
RibbonPageGroupConnManager.Visible = False
If Not IsNothing(CURRENT_TBPMO_CONN_SWITCH) Then
If CURRENT_TBPMO_CONN_SWITCH.Rows.Count > 1 Then
Dim dt2 As DataTable = CURRENT_TBPMO_CONN_SWITCH
Dim dr2 As DataRow() = dt2.Select("ACTIVE = 0")
Dim name = ""
For Each row As DataRow In dr2
name = row.Item("DESCRIPTION")
Next
If name <> "" Then
BarButtonItemSwitchCon.Caption = "Switch Connection to: " & name
RibbonPageGroupConnManager.Visible = True
End If
End If
End If
Catch ex As Exception
LOGGER.Warn("Unexpected Error in CONN_Manager:" & ex.Message)
End Try
End Sub
'Sub Proxy_Server_Controls()
' Try
' If LICENSE_PROXY = True And clsDatabase.DB_PROXY_INITIALIZED = True Then
' 'itemRefreshProxy.Visibility = BarItemVisibility.Always
' LabelProxyServer.Visibility = BarItemVisibility.Always
' LOGGER.Info("PROXY-SERVER is being used")
' Else
' 'itemRefreshProxy.Visibility = BarItemVisibility.Never
' LabelProxyServer.Visibility = BarItemVisibility.Never
' End If
' Catch ex As Exception
' LOGGER.Warn("Unexpected Error in Sub Proxy_Server_Controls():" & ex.Message)
' End Try
'End Sub
Public Sub RUN_TIMER()
Try
If TIMER_SCAN.Enabled = False And CURRENT_SCAN_FOLDERWATCH <> "" And FWSCAN_started = True Then
If System.IO.Directory.Exists(CURRENT_SCAN_FOLDERWATCH) = False Then
LOGGER.Warn("SCAN PATH '" & CURRENT_SCAN_FOLDERWATCH & "'not accessable!")
Exit Sub
End If
TIMER_SCAN.Interval = 30000
TIMER_SCAN.Enabled = True
AddHandler TIMER_SCAN.Tick, AddressOf Scan_TickHandler
Else
If TIMER_SCAN.Enabled = True And CURRENT_SCAN_FOLDERWATCH <> "" And FWSCAN_started = True Then
TIMER_SCAN.Enabled = False
itemScanInbox.Visibility = BarItemVisibility.Always
RUN_TIMER()
Else
TIMER_SCAN.Enabled = False
End If
End If
Catch ex As Exception
MsgBox("Unexpected Error in RUN_TIMER:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
End Sub
Sub Load_Connection_Dep_Data()
SetBackground()
If ERROR_INIT = "NONE" Then
If USER_IS_ADMIN = True Then
pageAdmin.Visible = True
' itemRefreshProxy.Visibility = BarItemVisibility.Always
Else
'itemRefreshProxy.Visibility = BarItemVisibility.Never
End If
LoggedIn()
'LoadMenuItems()
LoadMenuItems2()
LoadQuickStartItems()
ElseIf ERROR_INIT = "DATABASE" Then
Load_ConfigBasic()
ElseIf ERROR_INIT = "INVALID USER" Then
End If
Load_TasksforUser()
End Sub
Sub LoggedIn()
Try
Dim oSQL = String.Format("SELECT COUNT(*) AS Expr1 FROM TBDD_USER_MODULE_LOG_IN WHERE UPPER(MODULE) = UPPER('Record-Organizer') AND CLIENT_ID = {0}", CLIENT_SELECTED)
Dim anzahl = MYDB_ECM.GetScalarValue(oSQL)
USERS_LOGGED_IN = CInt(anzahl)
Catch ex As Exception
End Try
Dim msg = "Anzahl Angemeldete User: " & USERS_LOGGED_IN.ToString()
If USER_LANGUAGE <> "de-DE" Then
msg = "#User logged in: " & USERS_LOGGED_IN.ToString()
End If
LabelLoggedIn.Caption = msg
LOGGER.Info(msg + "(+1)")
End Sub
Sub Display_ConString()
Try
Dim connection As New SqlClient.SqlConnection(MyConnectionString) 'csb.ConnectionString)
Dim csb As New SqlClient.SqlConnectionStringBuilder
csb.ConnectionString = MYDB_ECM.CurrentConnectionString
Dim constr = connection.ConnectionString
If constr.Contains("Trusted_Connection=True") = False Then
constr = constr.Replace(csb.Password, "XXXXX")
End If
LabelConString.Caption = constr
Catch ex As Exception
MsgBox("Unexpected Error in Display_ConString:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
End Sub
Sub Load_TasksforUser()
Try
VWPMO_WF_ACTIVETableAdapter.Connection.ConnectionString = MYDB_ECM.CurrentConnectionString
Me.VWPMO_WF_ACTIVETableAdapter.Fill(Me.DD_DMSDataSet.VWPMO_WF_ACTIVE, USER_LANGUAGE, USER_USERNAME)
CURRENT_TASKS_GENERAL = Me.DD_DMSDataSet.VWPMO_WF_ACTIVE
Catch ex As Exception
MsgBox("Error in Load Tasks:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
End Sub
Private Sub frmMain_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
If ERROR_INIT = "INVALID USER" Then
Exit Sub
End If
If frmConstructor_Main.IsHandleCreated Then
If INSERT_IN_ACTION = True Then
Dim msg = "Bitte schliessen Sie zuerst das Hinzufügen des Datensatzes ab!"
If USER_LANGUAGE <> "de-DE" Then
msg = "Please finish Your Adding-Procedure first!"
End If
MsgBox(msg, MsgBoxStyle.Information)
e.Cancel = True
End If
End If
Try
ClassUser.LogoutUser()
ClassWindowLocation.SaveFormLocationSize(Me, 1, CURRENT_SCREEN_ID, "frmMain")
ToolStripManager.SaveSettings(Me)
My.Settings.Save()
Catch ex As Exception
End Try
'TempDateien löschen
Try
For Each _file In TEMP_FILES
System.IO.File.Delete(_file)
Next
Catch ex As Exception
End Try
End Sub
Private Shared Function LoadNoImage() As Bitmap
Return Nothing
End Function
Private Shared Function LoadImage(path As Object)
If Not IsDBNull(path) Then
Dim filepath As String = DirectCast(path, String)
filepath = CType(path, String)
If System.IO.File.Exists(path) Then
Return New Bitmap(filepath)
Else
Return LoadNoImage()
End If
Else
Return LoadNoImage()
End If
End Function
Public Sub LoadMenuItems2()
Try
Dim SQL2 As String = String.Format("SELECT A.GUID as CONSTRUCT_ID,A.NODE_NAVIGATION,B.FORM_ID, dbo.FNPMO_GETOBJECTCAPTION('{0}', 'CONSTR_MENUE' + CONVERT(VARCHAR(5), A.GUID), {1}) AS FORM_TITLE, A.SEQUENCE_MENU, A.ADDED_WHO, A.ADDED_WHEN, A.CHANGED_WHO," &
"A.CHANGED_WHEN, A.MENU_IMG, A.SHORT_TITLE, A.LANGUAGE, " &
"'CONSTR_MENUE' + CONVERT(VARCHAR(5), A.GUID) as OBECTNAME FROM TBPMO_FORM_CONSTRUCTOR A INNER JOIN TBPMO_FORM_CONSTRUCTOR_DETAIL B ON A.GUID = B.CONSTRUCT_ID where A.GUID in (SELECT CONSTRUCT_ID FROM TBPMO_CONSTRUCTOR_USER WHERE HOME_MENUE = 0 AND USER_ID = {2}) ORDER BY A.SEQUENCE_MENU", USER_LANGUAGE, CURRENT_SCREEN_ID, USER_GUID)
Dim dt As DataTable = MYDB_ECM.GetDatatable(SQL2)
If dt.Rows.Count <> 0 Then
pageForms.Visible = True
For Each oEntityRow As DataRow In dt.Rows
Dim image As Bitmap = Nothing
If IsDBNull(oEntityRow.Item("MENU_IMG")) Then
image = My.Resources.ResourceManager.GetObject("changechartlegendalignment_32x32")
Else
Dim bimg() As Byte = oEntityRow.Item("MENU_IMG")
Dim bitmap As Bitmap = ByteArrayToBitmap(bimg)
image = bitmap
End If
Dim title = oEntityRow.Item("FORM_TITLE")
If title = "CAPTION (OBJ) NOT TRANSLATED" Then
Dim objectname = oEntityRow.Item("OBECTNAME")
Dim objectname_temp = String.Format("Object {0} not translated", objectname)
Dim ins = String.Format("INSERT INTO TBPMO_LANGUAGE_OBJECT (LANGUAGE_TYPE,SCREEN_ID,PMO_OBJECT_NAME,CAPTION) VALUES " &
"('{0}',{1},'{2}', '{3}')", USER_LANGUAGE, CURRENT_SCREEN_ID, objectname, objectname_temp)
If MYDB_ECM.ExecuteNonQuery(ins) = True Then
title = objectname_temp
End If
End If
Dim index As Integer = oEntityRow.Item("SEQUENCE_MENU")
Dim tag As String = oEntityRow.Item("CONSTRUCT_ID") & "#" & oEntityRow.Item("NODE_NAVIGATION") & "#" & oEntityRow.Item("FORM_ID")
Dim item As New BarButtonItem(ribbonMain.Manager, title)
item.RibbonStyle = RibbonItemStyles.Large
item.Caption = title
item.Tag = tag
item.Glyph = image
item.LargeGlyph = image
AddHandler item.ItemClick, AddressOf tbiOpenEntityFormClick
groupQuickAccessForm2.ItemLinks.Add(item)
Next
Else
pageForms.Visible = False
End If
Catch ex As Exception
MsgBox("Unexpected Error in Load QuickStart-Items:" & vbNewLine & ex.Message)
End Try
End Sub
Public Sub LoadQuickStartItems()
Try
Dim SQL2 As String = String.Format("SELECT A.GUID as CONSTRUCT_ID, B.FORM_ID, A.NODE_NAVIGATION,dbo.FNPMO_GETOBJECTCAPTION('{0}', 'CONSTR_MENUE' + CONVERT(VARCHAR(5), A.GUID), {1}) AS FORM_TITLE, A.SEQUENCE_MENU, A.ADDED_WHO, A.ADDED_WHEN, A.CHANGED_WHO," &
"A.CHANGED_WHEN, A.MENU_IMG, A.SHORT_TITLE, A.LANGUAGE, " &
"'CONSTR_MENUE' + CONVERT(VARCHAR(5), A.GUID) as OBECTNAME FROM TBPMO_FORM_CONSTRUCTOR A INNER JOIN TBPMO_FORM_CONSTRUCTOR_DETAIL B On A.GUID = B.CONSTRUCT_ID where A.GUID in (SELECT CONSTRUCT_ID FROM TBPMO_CONSTRUCTOR_USER WHERE HOME_MENUE = 1 AND USER_ID = {2}) ORDER BY A.SEQUENCE_MENU", USER_LANGUAGE, CURRENT_SCREEN_ID, USER_GUID)
Dim oDTConstructors As DataTable = MYDB_ECM.GetDatatable(SQL2)
Dim image2 As Bitmap = LoadNoImage()
Try
If Not IsNothing(groupQuickAccessForm) Then
Do While 0 < groupQuickAccessForm.ItemLinks.Count
groupQuickAccessForm.ItemLinks.Remove(groupQuickAccessForm.ItemLinks(0))
Loop
End If
Catch ex As Exception
End Try
If oDTConstructors.Rows.Count <> 0 Then
For Each row As DataRow In oDTConstructors.Rows
If Not IsDBNull(row.Item("MENU_IMG")) Then
Dim bimg() As Byte = row.Item("MENU_IMG")
Dim bitmap As Bitmap = ByteArrayToBitmap(bimg)
image2 = bitmap
Else
image2 = My.Resources.changechartlegendalignment_32x32
End If
Dim title = row.Item("FORM_TITLE")
If title = "CAPTION (OBJ) NOT TRANSLATED" Then
Dim objectname = row.Item("OBECTNAME")
Dim objectname_temp = String.Format("Object {0} not translated", objectname)
Dim ins = String.Format("INSERT INTO TBPMO_LANGUAGE_OBJECT (LANGUAGE_TYPE,SCREEN_ID,PMO_OBJECT_NAME,CAPTION) VALUES " &
"('{0}',{1},'{2}', '{3}')", USER_LANGUAGE, CURRENT_SCREEN_ID, objectname, objectname_temp)
If MYDB_ECM.ExecuteNonQuery(ins) = True Then
title = objectname_temp
End If
End If
Dim index As Integer = row.Item("SEQUENCE_MENU")
Dim oTag As String = row.Item("CONSTRUCT_ID") & "#" & row.Item("NODE_NAVIGATION") & "#" & row.Item("FORM_ID")
Dim item As New BarButtonItem(ribbonMain.Manager, title)
item.RibbonStyle = RibbonItemStyles.Large
item.Caption = title
item.Tag = oTag
item.Glyph = image2
AddHandler item.ItemClick, AddressOf tbiOpenEntityFormClick
groupQuickAccessForm.ItemLinks.Add(item)
image2 = Nothing
Next
Else
MsgBox("No consturctors configured for user!", MsgBoxStyle.Information)
Clipboard.SetText(SQL2)
End If
Dim sql = "SELECT COUNT(GUID) FROM TBPMO_USER_GLOBAL_SEARCH WHERE USER_ID = " & USER_GUID
Dim Count = MYDB_ECM.GetScalarValue(SQL)
If Count = 0 Then
btnGlobalSearch.Enabled = False
groupSearchAllOver.Visible = False
Else
btnGlobalSearch.Enabled = True
groupSearchAllOver.Visible = True
End If
Catch ex As Exception
MsgBox("Unexpected Error in Load QuickStart-Items:" & vbNewLine & ex.Message)
End Try
End Sub
Private Function Get_FormKonfig(ByVal oStr As String) As List(Of String)
Return New List(Of String)(oStr.Split("#").ToArray())
End Function
Private Sub tbiOpenEntityFormClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs)
Cursor = Cursors.WaitCursor
Dim oArr As List(Of String) = Get_FormKonfig(e.Item.Tag)
Dim formId As Integer = Integer.Parse(oArr(0))
OpenFormConstructor(formId, oArr(1), oArr(2))
Cursor = Cursors.Default
End Sub
Private Sub NavbarItem_Click(sender As Object, e As NavBarLinkEventArgs)
Cursor = Cursors.WaitCursor
Dim oArr As List(Of String) = Get_FormKonfig(e.Link.Item.Tag)
Dim formId As Integer = Integer.Parse(oArr(0))
OpenFormConstructor(formId, oArr(1), oArr(2))
Cursor = Cursors.Default
End Sub
'Private Sub MenuItemClick(sender As Object, e As EventArgs)
' Dim item As ToolStripMenuItem = DirectCast(sender, ToolStripMenuItem)
' Dim formId As Integer = Integer.Parse(item.Tag)
' Cursor = Cursors.WaitCursor
' OpenFormInputFor(formId, 1)
' Cursor = Cursors.Default
'End Sub
Private Sub MenuItem2Click(sender As Object, e As EventArgs)
Dim item As ToolStripMenuItem = DirectCast(sender, ToolStripMenuItem)
Cursor = Cursors.WaitCursor
Dim oArr As List(Of String) = Get_FormKonfig(item.Tag)
Dim formId As Integer = Integer.Parse(oArr(0))
OpenFormConstructor(formId, oArr(1), oArr(2))
Cursor = Cursors.Default
End Sub
Private Sub QuickAccessClick(sender As Object, e As EventArgs)
Dim btn As ToolStripButton = CType(sender, ToolStripButton)
Dim oArr As List(Of String) = Get_FormKonfig(sender.Tag)
Dim formId As Integer = Integer.Parse(oArr(0))
OpenFormConstructor(formId, oArr(1), oArr(2))
End Sub
Private Sub SetBackground()
Dim ctrl As Control
Dim ctrlMDI As MdiClient
For Each ctrl In Me.Controls
Try
ctrlMDI = CType(ctrl, MdiClient)
ctrlMDI.BackColor = Me.BackColor
Catch ex As Exception
End Try
Next
End Sub
Private Sub SetBackgroundImage()
Try
Dim SQL As String = "SELECT BACKGROUND_IMAGE FROM TBDD_MODULES WHERE NAME = 'Record-Organizer'"
Dim bimage() As Byte = MYDB_ECM.GetScalarValue(SQL)
If Not IsDBNull(bimage) Then
Dim image As Bitmap = ByteArrayToBitmap(bimage)
Me.BackgroundImage = image
Me.BackgroundImageLayout = ImageLayout.Center
End If
Catch ex As Exception
LOGGER.Warn("Unexpected Error in Load BackgroundImage: " & ex.Message)
End Try
End Sub
Sub Refresh_TaskReminder()
Load_TasksforUser()
Try
If DD_DMSDataSet.VWPMO_WF_ACTIVE.Rows.Count > 0 Then
NotifyIcon.Visible = True
If USER_LANGUAGE = "de-DE" Then
NotifyIcon.ShowBalloonTip(50000, "OrgFLOW-Unerledigte Tasks", "Sie haben unerledigte Tasks in Ihrem Verantwortungsbereich." & vbNewLine & "Bitte überprüfen Sie Ihre Workflow-Tasks", ToolTipIcon.Info)
Else
NotifyIcon.ShowBalloonTip(50000, "OrgFLOW-Pending Tasks", "You have pending tasks in Your authority." & vbNewLine & "Please check Your Tasks", ToolTipIcon.Info)
End If
End If
Catch ex As Exception
MsgBox("Error in Refresh_TaskReminder:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
End Sub
Private Sub EbenenKonfiguratorToolStripMenuItem_Click(sender As Object, e As EventArgs)
Cursor = Cursors.WaitCursor
OpenFormOverview()
Cursor = Cursors.Default
End Sub
Private Sub KalenderToolStripMenuItem_Click(sender As Object, e As EventArgs)
Cursor = Cursors.WaitCursor
OpenFormCalendar()
Cursor = Cursors.Default
End Sub
Private Sub BeendenToolStripMenuItem_Click(sender As Object, e As EventArgs)
Me.Close()
End Sub
Private Sub WorkflowTaskmanagementToolStripMenuItem_Click(sender As Object, e As EventArgs)
OpenTaskmanagement()
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs)
End Sub
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles TimerTasks.Tick
Refresh_TaskReminder()
End Sub
Private Sub frmMain_Resize(sender As Object, e As EventArgs) Handles Me.Resize
' Repaint Form on Resize End
Me.Invalidate(True)
Me.Update()
End Sub
Private Sub frmMain_Shown(sender As Object, e As EventArgs) Handles Me.Shown
Try
Me.Cursor = Cursors.WaitCursor
If ERROR_INIT <> "INVALID USER" Then
If Task_Popup_minutes <> 0 Then
TimerTasks.Start()
Refresh_TaskReminder()
End If
RUN_TIMER()
Timer5mins.Start()
If Sett_ConstructorStart <> 0 Then
Cursor = Cursors.WaitCursor
OpenFormConstructor(Sett_ConstructorStart, False, 99)
Cursor = Cursors.Default
End If
'Lizenz abgellaufen, überprüfen ob User Admin ist
If LICENSE_COUNT <= (USERS_LOGGED_IN + 1) Then
If USER_IS_ADMIN = True Then
LOGGER.Info("User is Admin - Timer will be started")
'If USER_LANGUAGE = "de-DE" Then
MsgBox("You now got 3 minutes for creating a new license", MsgBoxStyle.Information)
'Else
' MsgBox("You now got 3 minutes to update the license!", MsgBoxStyle.Information)
'End If
'Timer starten
If TimerClose3Minutes.Enabled = False Then
TimerClose3Minutes.Start()
End If
End If
Else
If LICENSE_SAP_Connect = True Then
Me.BarButtonItemSAPConnect.Enabled = True
End If
End If
Else
MsgBox("Application will close now!", MsgBoxStyle.Critical)
Me.Close()
End If
' MsgBox("574")
Dim myversion = CInt(My.Application.Info.Version.ToString.Replace(".", ""))
Dim minreqver = CInt(MIN_REQUIRED_VERSION.Replace(".", ""))
' MsgBox("577")
If myversion < minreqver Then
MsgBox(String.Format("Your version '{0}' does not match the minimum required version and needs to be updated! Please contact Your systemadministrator!" & vbNewLine & "Application will close now.", My.Application.Info.Version.ToString), MsgBoxStyle.Exclamation)
Me.Close()
End If
Try
If USER_IS_ADMIN = False Or AUTO_LOGOUT_USER > 0 Then
TIMER_INACTIVITY = New ClassInactivity(AUTO_LOGOUT_USER)
Application.AddMessageFilter(New ClassInactivityFilter(Me))
End If
Catch ex As Exception
ClassHelper.InsertEssential_Log(USER_GUID, "USER_ID", "Unexpected Error in AUTO_LOGOUT_USER: " & ex.Message)
End Try
Catch ex As Exception
MsgBox("Unexpected Error in FormShown: " & ex.Message, MsgBoxStyle.Critical)
End Try
'If DOCTYPE_COUNT_ACTUAL > LICENSE_DOCTYPE_COUNT Then
' If CURRENT_USER_IS_ADMIN = True Then
' Logger.Info("User is Admin - Timer will be started")
' If USER_LANGUAGE = "de-DE" Then
' MsgBox("Sie haben nun 3 Minuten Zeit eine neue Lizenz zu vergeben!", MsgBoxStyle.Information)
' Else
' MsgBox("You now got 3 minutes to update the license!", MsgBoxStyle.Information)
' End If
' 'Timer starten
' If TimerClose3Minutes.Enabled = False Then
' TimerClose3Minutes.Start()
' End If
' End If
'End If
Me.Cursor = Cursors.Default
End Sub
Private Sub DokumentartkonfigurationToolStripMenuItem_Click(sender As Object, e As EventArgs)
OpenDokumentartt()
End Sub
Private Sub MenuKonfigurationToolStripMenuItem_Click(sender As Object, e As EventArgs)
OpenMenuDesigner()
End Sub
Private Sub UserKonfigurationToolStripMenuItem_Click(sender As Object, e As EventArgs)
OpenUserKonfig()
End Sub
Private Sub ImageManagerToolStripMenuItem_Click(sender As Object, e As EventArgs)
OpenImageManager()
End Sub
Private Sub tsQuickMenue_LocationChanged(sender As Object, e As EventArgs)
'Console.WriteLine("locChanged" & tsQuickMenue.Location.ToString)
'If tsQuickMenue.Location.ToString <> "{X=0,Y=0}" Then
' SaveMySettingsValue("tsQuickMenueLocation", tsQuickMenue.Location.ToString)
'End If
End Sub
Private Sub GrundeinstellungenWindreamToolStripMenuItem_Click(sender As Object, e As EventArgs)
OpenObjecttypeConfig()
End Sub
Private Sub MenuStrip1_ItemClicked(sender As Object, e As ToolStripItemClickedEventArgs)
End Sub
Private Sub GrundeinstellungenToolStripMenuItem_Click(sender As Object, e As EventArgs)
frmRecOrgConfig_Basic.ShowDialog()
End Sub
Private Sub BarButtonItem1_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem1.ItemClick
OpenFormCalendar()
End Sub
Private Sub itemInfo_ItemClick(sender As Object, e As ItemClickEventArgs) Handles itemInfo.ItemClick
Try
Process.Start(MY_WIKISTRING)
Catch ex As Exception
MsgBox("No Help-Konfiguration. Please inform the system-Administrator", MsgBoxStyle.Exclamation)
End Try
End Sub
Private Sub itemExit_ItemClick(sender As Object, e As ItemClickEventArgs) Handles itemExit.ItemClick
Me.Close()
End Sub
Private Sub itemSettings_ItemClick(sender As Object, e As ItemClickEventArgs) Handles itemSettings.ItemClick
Load_ConfigBasic()
End Sub
Private Sub itemRefreshProxy_ItemClick(sender As Object, e As ItemClickEventArgs)
Me.Cursor = Cursors.WaitCursor
Dim upd = "UPDATE TBPROXY_CONFIG SET SYNC_RUNNING = 1 WHERE GUID = 1"
MYDB_ECM.ExecuteNonQuery(upd, True)
'If ClassProxy.Refresh_Object_Data() = True Then
' If ClassProxy.PRPROXY_SYNC_DOC_OBJECTS() = True Then
' Dim msg = "Die Proxydaten wurden erfolgreich synchronisiert!"
' If USER_LANGUAGE <> "de-DE" Then
' msg = "All proxydata was refreshed successfully!"
' End If
' MessageBox.Show(msg, "", MessageBoxButtons.OK, MessageBoxIcon.Information)
' Else
' MessageBox.Show("Error while refreshing proxy-data (Doc)!", "", MessageBoxButtons.OK, MessageBoxIcon.Error)
' End If
'Else
' MessageBox.Show("Error while refreshing proxy-data (objects)!", "", MessageBoxButtons.OK, MessageBoxIcon.Error)
'End If
upd = "UPDATE TBPROXY_CONFIG SET SYNC_RUNNING = 0, LAST_SYNC = GETDATE() WHERE GUID = 1"
MYDB_ECM.ExecuteNonQuery(upd, True)
Me.Cursor = Cursors.Default
End Sub
Sub Load_ConfigBasic()
frmConfig_Basic.ShowDialog()
If CONNECTION_CHANGED = True Then
' Den User neu laden, damit MenuItems korrekt geladen werden können
If ClassInit.InitDatabase = True Then
ClassInit.InitUserLogin()
Load_Connection_Dep_Data()
Display_ConString()
Else
MsgBox("Unexpected Error when new Initialize Database!", MsgBoxStyle.Critical)
End If
End If
If Task_Popup_minutes <> 0 Then
TimerTasks.Stop()
TimerTasks.Interval = Task_Popup_minutes * 60000
TimerTasks.Start()
Else
TimerTasks.Enabled = False
TimerTasks.Stop()
End If
'Proxy_Server_Controls()
RUN_TIMER()
End Sub
Private Sub BarButtonItem3_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem3.ItemClick
Cursor = Cursors.WaitCursor
OpenFormOverview()
Cursor = Cursors.Default
End Sub
Private Sub BarButtonItem4_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem4.ItemClick
OpenTaskmanagement()
End Sub
Private Sub BarButtonItem5_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem5.ItemClick
OpenUserKonfig()
End Sub
Private Sub BarButtonItem6_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem6.ItemClick
OpenMenuDesigner()
End Sub
Private Sub BarButtonItem7_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem7.ItemClick
OpenImageManager()
End Sub
Private Sub BarButtonItem2_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem2.ItemClick
frmRecOrgConfig_Basic.ShowDialog()
End Sub
Private Sub BarButtonItem10_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem10.ItemClick
Load_ConfigBasic()
End Sub
Private Sub BarButtonItem12_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem12.ItemClick
OpenWiedervorlage()
End Sub
Private Sub BarButtonItem14_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItemConnections.ItemClick
Dim frm As New frmConnections
frm.MdiParent = Me
frm.Show()
End Sub
Private Sub BarButtonItem16_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem16.ItemClick
Close_Maximized_Forms()
Dim frm As New frmConstructorDesigner
frm.MdiParent = Me
frm.Show()
End Sub
Private Sub BarButtonItem17_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem17.ItemClick
OpenTemplatemanagement()
End Sub
Private Sub TimerClose3Minutes_Tick(sender As Object, e As EventArgs) Handles TimerClose3Minutes.Tick
If LICENSE_EXPIRED = True Or LICENSE_COUNT <= (USERS_LOGGED_IN + 1) Then
'If USER_LANGUAGE = "de-DE" Then
' MsgBox("Global Indexer wird nun geschlossen, weil keine neue Lizenzdaten eingegeben wurden!", MsgBoxStyle.Information)
'Else
MsgBox("Record Organizer will now be closed, cause no new license was updated!", MsgBoxStyle.Information)
'End If
Me.Close()
Else
TimerClose3Minutes.Stop()
End If
End Sub
Private Sub frmMain_KeyUp(sender As Object, e As KeyEventArgs) Handles MyBase.KeyUp
Select Case e.KeyCode
Case Keys.F12
Try
frmLicense.ShowDialog()
Catch ex As Exception
End Try
End Select
End Sub
Private Sub BarButtonItem18_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem18.ItemClick
Close_Maximized_Forms()
Dim frm As New frmLanguage_Translator
frm.MdiParent = Me
frm.Show()
End Sub
Public Sub New()
Dim splash As New frmSplash()
splash.ShowDialog()
Try
If ERROR_INIT <> "INVALID USER" Then
Dim cultureInfo As System.Globalization.CultureInfo
cultureInfo = New System.Globalization.CultureInfo(USER_LANGUAGE)
cultureInfo.DateTimeFormat.ShortDatePattern = USER_DATE_FORMAT
Thread.CurrentThread.CurrentCulture = cultureInfo
Thread.CurrentThread.CurrentUICulture = cultureInfo
CultureInfo.DefaultThreadCurrentCulture = cultureInfo
CultureInfo.DefaultThreadCurrentUICulture = cultureInfo
End If
Catch ex As Exception
End Try
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
End Sub
Private Sub NotifyIcon_BalloonTipClicked(sender As Object, e As EventArgs) Handles NotifyIcon.BalloonTipClicked
OpenFormCockpit()
End Sub
Private Sub CockpitAnzeigenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles CockpitAnzeigenToolStripMenuItem.Click
OpenFormCockpit()
End Sub
Private Sub BarButtonItem20_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem20.ItemClick
Close_Maximized_Forms()
Dim frm As New frmRight_Management
frm = frmRight_Management.Instance()
frm.MdiParent = MAIN_FORM
frm.Show()
End Sub
Private Sub BarButtonItem21_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItemSAPConnect.ItemClick
Dim frm As New frmSAP_FuBa
frm.MdiParent = Me
frm.Show()
End Sub
Private Sub Button1_Click_1(sender As Object, e As EventArgs)
End Sub
Private Sub BarButtonItemStructureNOdes_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItemStructureNOdes.ItemClick
Close_Maximized_Forms()
Dim frm As New frmStructureNodeConfig
frm = frmStructureNodeConfig.Instance()
frm.MdiParent = MAIN_FORM
frm.Show()
End Sub
Private Sub BarButtonItem14_ItemClick_1(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem14.ItemClick
Close_Maximized_Forms()
OpenDokumentartt()
End Sub
Private Sub BarButtonItem21_ItemClick_1(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem21.ItemClick
Close_Maximized_Forms()
OpenObjecttypeConfig()
End Sub
Private Sub BarButtonItem8_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem8.ItemClick
Close_Maximized_Forms()
OpenRightsmanager()
End Sub
Private Sub BarButtonItem9_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem9.ItemClick
Dim frm As New frmWM_Resultlist_Config()
frm.MdiParent = MAIN_FORM
frm.Show()
End Sub
Private Sub ribbonMain_Merge(sender As Object, e As RibbonMergeEventArgs) Handles ribbonMain.Merge
' Zeigt im Ribbon Control den Kalender-Tab an, wenn der Kalender Maximiert wurde
Dim oMergeableRibbons = New List(Of String) From {"ribbonCalendar", "ribbonNodeNavigation"}
Dim oMergedRibbonControl = e.MergedChild
If oMergeableRibbons.Contains(oMergedRibbonControl.Name) Then
Dim oMergedPage = e.MergeOwner.MergedPages.First()
e.MergeOwner.SelectedPage = oMergedPage
End If
End Sub
Private Sub itemAbout_ItemClick(sender As Object, e As ItemClickEventArgs) Handles itemAbout.ItemClick
frmAbout.ShowDialog()
End Sub
Private Sub BarButtonItem19_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem19.ItemClick
frmLicense_User.ShowDialog()
End Sub
Private Sub frmMain_MdiChildActivate(sender As Object, e As EventArgs) Handles Me.MdiChildActivate
Dim mainForm As Form = sender
Dim constructorFound = False
For Each childForm As Form In mainForm.MdiChildren
If (childForm.Name = "frmConstructor_Main") Then
Dim form As frmConstructor_Main = childForm
Dim formOpening = Not (form.Disposing Or form.IsDisposed)
' Wird das Child Formular gerade geöffnet?
If formOpening Then
constructorFound = True
End If
End If
Next
' Wenn gerade ein frmConstructor_Main geöffnet wurde,
' wird ribbonMain minimiert
If constructorFound Then
ribbonMain.Minimized = True
Else
ribbonMain.Minimized = False
End If
End Sub
Private Sub ribbonMain_MouseMove(sender As Object, e As MouseEventArgs) Handles ribbonMain.MouseMove
Dim hitInfo As RibbonHitInfo = ribbonMain.CalcHitInfo(e.Location)
' Wenn ribbonMain minimiert ist und die Maus über den Reitern
If (ribbonMain.Minimized And hitInfo.HitTest = RibbonHitTest.PageHeader) Then
ribbonMain.Minimized = False
End If
End Sub
Private Sub BarButtonItem23_ItemClick(sender As Object, e As ItemClickEventArgs) Handles btnGlobalSearch.ItemClick
OpenSearchAllOVer()
End Sub
Private Sub BarButtonItem25_ItemClick(sender As Object, e As ItemClickEventArgs) Handles bbtnItemViewsUser.ItemClick
OpenViewsUser()
End Sub
Private Sub BarButtonItem25_ItemClick_1(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem25.ItemClick
OpenStatisticsADDI()
End Sub
Private Sub TimerInforamtion_Tick(sender As Object, e As EventArgs) Handles TimerInformation.Tick
If CURRENT_NOTIFICATION_MSG <> String.Empty Then
Dim caption = "Information Dateiimport"
If USER_LANGUAGE <> "de-DE" Then
caption = "Information File-Import"
End If
NotifyIcon.ShowBalloonTip(30000, caption, CURRENT_NOTIFICATION_MSG, ToolTipIcon.Info)
CURRENT_NOTIFICATION_MSG = ""
End If
End Sub
Private Sub BarButtonItem13_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem13.ItemClick
OpenLogRecord()
End Sub
Private Sub BarButtonItemSwitchCon_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItemSwitchCon.ItemClick
Try
Dim dt2 As DataTable = CURRENT_TBPMO_CONN_SWITCH
Dim drActive As DataRow() = dt2.Select("ACTIVE = 1")
Dim drInActive As DataRow() = dt2.Select("ACTIVE = 0")
Dim oSQLDescription = ""
Dim oSqlcon = ""
Dim oSqlcon_Proxy = ""
Dim oWM_ALIAS = ""
Dim oINACTIVE_GUID
Dim oACTIVE_GUID
For Each row As DataRow In drInActive
oINACTIVE_GUID = row.Item("GUID")
oSQLDescription = row.Item("DESCRIPTION")
oSqlcon = row.Item("SQL_CONNECTION")
oSqlcon_Proxy = row.Item("SQL_CONNECTION_PROXY")
oWM_ALIAS = row.Item("WM_ALIAS")
Next
For Each row As DataRow In drActive
oACTIVE_GUID = row.Item("GUID")
Next
If oSQLDescription <> "" Then
Dim oresult As MsgBoxResult
Dim msg = "Wollen Sie die Verbindungs-Konfiguration nun auf '" & oSQLDescription & "' ändern?"
If USER_LANGUAGE <> "de-DE" Then
msg = "Would You like to change the Connection-configuration to '" & oSQLDescription & "'?"
End If
oresult = MessageBox.Show(msg, CAPTION_CONFIRMATION, MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If oresult = MsgBoxResult.Yes Then
BarButtonItemSwitchCon.Caption = "Switch Connection to: " & oSQLDescription
Try
My.Computer.Registry.SetValue("HKEY_CURRENT_USER\Software\A.I.S. GmbH\windream\3.6\ServerShareSelector", "CurrentAlias", oWM_ALIAS)
My.Computer.Registry.SetValue("HKEY_CURRENT_USER\Software\A.I.S. GmbH\windream\3.6\ServerShareSelector", "VFSAlias", oWM_ALIAS)
Catch ex As Exception
LOGGER.Warn("Unexpected error in Changing WMAlias: " & ex.Message)
MsgBox("Unexpected error in Changing WMAlias: " & ex.Message, MsgBoxStyle.Critical)
Exit Sub
End Try
Try
Dim IndexService = CreateObject("WMIndexServer.WMIdxSvControl")
IndexService.shutdown
IndexService.Start
Catch ex As Exception
LOGGER.Warn("Unexpected error in Restarting IndexService: " & ex.Message)
MsgBox("Unexpected error in Restarting IndexService: " & ex.Message, MsgBoxStyle.Critical)
Exit Sub
End Try
Try
Dim ControlCenter = CreateObject("Wmcc.ControlCenter")
ControlCenter.StartVFSService(0)
ControlCenter.StartVFSService(1)
Catch ex As Exception
LOGGER.Warn("Unexpected error in Restarting ControlCenter: " & ex.Message)
MsgBox("Unexpected error in Restarting ControlCenter: " & ex.Message, MsgBoxStyle.Critical)
Exit Sub
End Try
SaveMySettingsValue("MyConnectionString", oSqlcon, "ConfigMain")
MyConnectionString = oSqlcon
Display_ConString()
If oSqlcon_Proxy <> String.Empty Then
SaveMySettingsValue("MyProxyConnectionString", oSqlcon_Proxy, "ConfigMain")
'ClassProxy.MyPROXYConnectionString = oSqlcon_Proxy
End If
Dim sql = String.Format("UPDATE TBPMO_CLIENT_CONN_SWITCH_USER SET ACTIVE = 1 WHERE GUID = {0}", oINACTIVE_GUID)
MYDB_ECM.GetScalarValue(SQL)
If ClassInit.InitDatabase = True Then
ClassInit.InitUserLogin()
Load_Connection_Dep_Data()
sql = String.Format("UPDATE TBPMO_CLIENT_CONN_SWITCH_USER SET ACTIVE = 1 WHERE UPPER(CONN_NAME) = UPPER('{0}') AND USER_ID = {1}", oSQLDescription, USER_GUID)
Dim oSuccess As Boolean = False
If MYDB_ECM.ExecuteNonQuery(Sql) = True Then
oSuccess = True
End If
If oSuccess = True Then
msg = "Die Client-Verbindung wurde erfolgreich gewechselt!"
If USER_LANGUAGE <> "de-DE" Then
msg = "The Client-Connection was changed successfully!"
End If
MsgBox(msg, MsgBoxStyle.Information)
Else
msg = "Die Client-Verbindung konnte nicht erfolgreich gewechselt werden!"
If USER_LANGUAGE <> "de-DE" Then
msg = "The Client-Connection could not be changed!"
End If
MsgBox(msg, MsgBoxStyle.Critical)
End If
ClassInit.Init_CONN_SWITCH()
CONN_Manager()
End If
End If
End If
Catch ex As Exception
MsgBox("Unexpected error in BarButtonItemSwitchCon.ItemClick: " & ex.Message, MsgBoxStyle.Critical)
End Try
End Sub
Private Sub Timer5mins_Tick(sender As Object, e As EventArgs) Handles Timer5mins.Tick
LoggedIn()
End Sub
Private Sub ADDIBeendenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ADDIBeendenToolStripMenuItem.Click
Me.Close()
End Sub
End Class