This commit is contained in:
SchreiberM 2015-12-14 17:17:48 +01:00
parent 16ae3d142f
commit 9591db4bf9
6 changed files with 137 additions and 76 deletions

View File

@ -152,8 +152,8 @@ Public Class ClassControlValues
LoadControlValue_forControl(RecordID, FormID, DirectCast(control, ComboBox), CONTROL_ID)
'LoadControlValues(RecordID, FormID, DirectCast(control, ComboBox).Controls)
ElseIf TypeOf control Is GroupBox Then
LoadControlValue_forControl(RecordID, FormID, DirectCast(control, GroupBox), CONTROL_ID)
' LoadControlValues(RecordID, FormID, DirectCast(control, GroupBox).Controls)
'LoadControlValue_forControl(RecordID, FormID, DirectCast(control, GroupBox), CONTROL_ID)
LoadControlValues(RecordID, FormID, DirectCast(control, GroupBox).Controls)
ElseIf TypeOf control Is PictureBox Then
LoadImage(RecordID, CONTROL_ID, control)
Else

View File

@ -48,4 +48,6 @@
Public LICENSE_COUNT As Integer = 0
Public LICENSE_DOSSIER_COUNT As Integer = 0
Public CONNECTION_CHANGED As Boolean = False
End Module

View File

@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.2.0.0")>
<Assembly: AssemblyVersion("2.3.0.0")>
<Assembly: AssemblyFileVersion("1.0.0.0")>

View File

@ -19,6 +19,7 @@
Dim result As MsgBoxResult
result = MessageBox.Show("Die Verbindung wurde erfolgreich aufgebaut!" & vbNewLine & "Möchten Sie diese Verbindung nun in der Anwendung speichern?", "Erfolgsmeldung:", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If result = MsgBoxResult.Yes Then
CONNECTION_CHANGED = True
'Set the construction string
MyConnectionString = con 'csb.ConnectionString
My.Settings.Save()
@ -54,7 +55,8 @@
If chkbxUserAut.Checked Then
con = "Data Source=" & Me.txtServer.Text & ";Trusted_Connection=True;"
Else
con = "Server=" & Me.txtServer.Text & ";Database=" & Me.cmbDatenbank.Text & ";User Id=" & Me.txtUser.Text & ";Password=" & Me.txtPasswort.Text & ";"
'con = "Server=" & Me.txtServer.Text & ";Database=" & Me.cmbDatenbank.Text & ";User Id=" & Me.txtUser.Text & ";Password=" & Me.txtPasswort.Text & ";"
con = "Server=" & Me.txtServer.Text & ";User Id=" & Me.txtUser.Text & ";Password=" & Me.txtPasswort.Text & ";"
End If
Dim connection As New SqlClient.SqlConnection(con) 'csb.ConnectionString)
connection.Open()
@ -63,6 +65,7 @@
' Ausführen und Ergebnis in einer ListBox anzeigen
Dim dr As SqlClient.SqlDataReader = cmd.ExecuteReader
If dr.HasRows Then
cmbDatenbank.Items.Clear()
Do While dr.Read
cmbDatenbank.Items.Add(dr("Database_Name"))
Loop
@ -83,6 +86,7 @@
Private Sub frmConfig_Basic_Load(sender As Object, e As EventArgs) Handles MyBase.Load
If Not MyConnectionString = String.Empty Then
CONNECTION_CHANGED = False
Try
Dim csb As New SqlClient.SqlConnectionStringBuilder
csb.ConnectionString = MyConnectionString
@ -120,7 +124,7 @@
Catch ex As Exception
MsgBox("Fehler in FormLoad: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
End If

View File

@ -634,7 +634,7 @@ Public Class frmForm_Constructor_Main_2
Check_Record_Changed()
DisableEditMode()
VerknüpfungenAnzeigenToolStripMenuItem.Enabled = True
Show_Selected_Record_Data(Grid_RecordID)
Show_Selected_Record_Data(Grid_RecordID, False)
If LogErrorsOnly = False Then ClassLogger.Add(">> After Show_Selected_Record_Data - " & Now, False)
If TabPos.PageVisible = True And TCDetails.SelectedTabPage.Text.StartsWith("Posi") Then
Clear_GridPos_View()
@ -1357,12 +1357,12 @@ Public Class frmForm_Constructor_Main_2
Update_Status_Label(True, "Entität 1 übersprungen - Alle Datensätze geladen", EditState.Update)
End If
'tslblEntity3.Visible = False
Select Case CURRENT_FORM_TYPE
Case 5
If GET_GROUP_OR_SINGLE_RECORD(PARENT_RECORDID) = True Then
EBENE2_RECID = CURRENT_RECORD_ID
End If
End Select
'Select Case CURRENT_FORM_TYPE
' Case 5
' If GET_GROUP_OR_SINGLE_RECORD(PARENT_RECORDID) = True Then
' EBENE2_RECID = CURRENT_RECORD_ID
' End If
'End Select
EBENE2_COLUMNNAME = ClassDatabase.Execute_Scalar("SELECT COLUMN_NAME1 FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & CURRENT_FORM_ID)
EBENE3_COLUMNNAME = ""
@ -1374,15 +1374,12 @@ Public Class frmForm_Constructor_Main_2
ACT_EBENE_STRING = EBENE3_ENTITY
If LogErrorsOnly = False Then ClassLogger.Add(">> Ebene 3 in TreeView selektiert", False)
EBENE3_COLUMNNAME = ClassDatabase.Execute_Scalar("SELECT COLUMN_NAME1 FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & CURRENT_FORM_ID)
'Wenn bereits ein Record für Ebene 1 gewählt wurde dann eisnchränken
If EBENE2_RECID > 0 Then
'Parent-ID setzen
PARENT_RECORDID = EBENE2_RECID
CURRENT_PARENTID = EBENE2_RECID
Console.WriteLine("PARENT_RECORDID: " & PARENT_RECORDID)
Try
If GRID_TYPE = GridType.Grid Then
CURRENT_ENTITYSQL = "SELECT T.* FROM VWTEMP_PMO_FORM" & CURRENT_FORM_ID.ToString & " T, TBPMO_RECORD_CONNECT t1 where T.[Record-ID] = T1.RECORD2_ID AND T1.RECORD1_ID = " & CURRENT_PARENTID
@ -1404,12 +1401,12 @@ Public Class frmForm_Constructor_Main_2
Update_Status_Label(True, "Entität 2 übersprungen - Alle Datensätze geladen", EditState.Update)
tsslblRecord.Text = ""
End If
Select Case CURRENT_FORM_TYPE
Case 5
If GET_GROUP_OR_SINGLE_RECORD(PARENT_RECORDID) = True Then
EBENE3_RECID = CURRENT_RECORD_ID
End If
End Select
'Select Case CURRENT_FORM_TYPE
' Case 5
' If GET_GROUP_OR_SINGLE_RECORD(PARENT_RECORDID) = True Then
' EBENE3_RECID = CURRENT_RECORD_ID
' End If
'End Select
EBENE3_GRID_RESULT = Nothing
End Select
@ -1440,15 +1437,22 @@ Public Class frmForm_Constructor_Main_2
End If
If CURRENT_FORM_TYPE = 5 Or IS_SINGLE_RECORD = True Then
GET_GROUP_OR_SINGLE_RECORD(PARENT_RECORDID)
' Laden der Daten bedeutet nicht dass Daten vom Benutzer geändert wurden!
RECORD_CHANGED = False
If GET_GROUP_OR_SINGLE_RECORD(PARENT_RECORDID, True) = True Then
' Laden der Daten bedeutet nicht dass Daten vom Benutzer geändert wurden!
RECORD_CHANGED = False
Show_Selected_Record_Data(CURRENT_RECORD_ID, True)
Get_RecordCounts_Nodes()
End If
' Hide_Grid_Columns()
If CURRENT_FORM_TYPE = 5 Then
TabDetails.PageVisible = False
Else
TabDetails.PageVisible = True
End If
Show_Selected_Record_Data(CURRENT_RECORD_ID)
Get_RecordCounts_Nodes()
Hide_Grid_Columns()
Else
TabDetails.PageVisible = True
GridControlMain.Visible = True
Dim DTEntity As DataTable = ClassDatabase.Return_Datatable(CURRENT_ENTITYSQL, "LoadEntityData - Get DTEntity")
@ -1702,18 +1706,21 @@ Public Class frmForm_Constructor_Main_2
RECORD_CHANGED = False
End If
End Sub
Private Function GET_GROUP_OR_SINGLE_RECORD(PARENT_ID As Integer)
Private Function GET_GROUP_OR_SINGLE_RECORD(PARENT_RECORD_ID As Integer, Entityload As Boolean)
'Dim sqlRecord As String = String.Format("SELECT T.RECORD2_ID FROM TBPMO_RECORD_CONNECT T, TBPMO_RECORD T1 WHERE T.RECORD2_ID = T1.GUID AND T.RECORD1_ID = {0} AND T1.FORM_ID = (SELECT PARENT_ID FROM TBPMO_FORM WHERE GUID = {1})", LINKED_RECORD, CURRENT_FORM_ID)
Dim sqlRecord As String = String.Format("SELECT T.RECORD2_ID FROM TBPMO_RECORD_CONNECT T, TBPMO_RECORD T1 WHERE T.RECORD2_ID = T1.GUID AND T.RECORD1_ID = {0} and T1.FORM_ID = {1}", PARENT_ID, CURRENT_FORM_ID)
Dim recid = ClassDatabase.Execute_Scalar(sqlRecord, True)
If IsNothing(recid) Then
Dim sql As String = String.Format("SELECT T.RECORD2_ID FROM TBPMO_RECORD_CONNECT T, TBPMO_RECORD T1 WHERE T.RECORD2_ID = T1.GUID AND T.RECORD1_ID = {0} and T1.FORM_ID = {1}", PARENT_RECORD_ID, CURRENT_FORM_ID)
Dim GRP_SINGLE_REC = ClassDatabase.Execute_Scalar(sql, True)
If IsNothing(GRP_SINGLE_REC) Then
If ClassControlCommandsUI.CreateRecord(CURRENT_FORM_ID) = True Then
recid = ClassControlCommandsUI.GetLastRecord
If Not IsNothing(recid) Then
GRP_SINGLE_REC = ClassControlCommandsUI.GetLastRecord
If Not IsNothing(GRP_SINGLE_REC) Then
'Die neue Record-ID setzen
CURRENT_RECORD_ID = recid
CURRENT_RECORD_ID = GRP_SINGLE_REC
SELECTED_RECORD_ID = CURRENT_RECORD_ID
ClassControlCommandsUI.ConnectRecord(CURRENT_PARENTID, CURRENT_RECORD_ID, "PARENT_LINK (Group/Single-Record) for Entity " & CURRENT_FORM_ID.ToString)
If ClassControlCommandsUI.ConnectRecord(PARENT_RECORD_ID, CURRENT_RECORD_ID, "PARENT_LINK (Group/Single-Record) for Entity " & CURRENT_FORM_ID.ToString) = False Then
MsgBox("Unexpected Error in Connecting Record. Check log", MsgBoxStyle.Critical)
Return False
End If
Else
Return False
End If
@ -1722,10 +1729,10 @@ Public Class frmForm_Constructor_Main_2
End If
Else
Try
CURRENT_RECORD_ID = CInt(recid)
CURRENT_RECORD_ID = CInt(GRP_SINGLE_REC)
SELECTED_RECORD_ID = CURRENT_RECORD_ID
Catch ex As Exception
MsgBox("Error while getting CURRENT_RECORDID: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
MsgBox("Error while getting CURRENT_RECORDID FOR PARENT_ID: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Return False
End Try
End If
@ -1738,15 +1745,55 @@ Public Class frmForm_Constructor_Main_2
Case 3
EBENE3_RECID = CURRENT_RECORD_ID
End Select
Update_Record_Label(CURRENT_RECORD_ID)
Return True
End Function
'Private Function GET_GROUP_OR_SINGLE_RECORD(PARENT_ID As Integer)
' 'Dim sqlRecord As String = String.Format("SELECT T.RECORD2_ID FROM TBPMO_RECORD_CONNECT T, TBPMO_RECORD T1 WHERE T.RECORD2_ID = T1.GUID AND T.RECORD1_ID = {0} AND T1.FORM_ID = (SELECT PARENT_ID FROM TBPMO_FORM WHERE GUID = {1})", LINKED_RECORD, CURRENT_FORM_ID)
' Dim sqlRecord As String = String.Format("SELECT T.RECORD2_ID FROM TBPMO_RECORD_CONNECT T, TBPMO_RECORD T1 WHERE T.RECORD2_ID = T1.GUID AND T.RECORD1_ID = {0} and T1.FORM_ID = {1}", PARENT_ID, CURRENT_FORM_ID)
' Dim recid = ClassDatabase.Execute_Scalar(sqlRecord, True)
' If IsNothing(recid) Then
' If ClassControlCommandsUI.CreateRecord(CURRENT_FORM_ID) = True Then
' recid = ClassControlCommandsUI.GetLastRecord
' If Not IsNothing(recid) Then
' 'Die neue Record-ID setzen
' CURRENT_RECORD_ID = recid
' SELECTED_RECORD_ID = CURRENT_RECORD_ID
' ClassControlCommandsUI.ConnectRecord(PARENT_ID, CURRENT_RECORD_ID, "PARENT_LINK (Group/Single-Record) for Entity " & CURRENT_FORM_ID.ToString)
' Else
' Return False
' End If
' Else
' Return False
' End If
' Else
' Try
' CURRENT_RECORD_ID = CInt(recid)
' SELECTED_RECORD_ID = CURRENT_RECORD_ID
' Catch ex As Exception
' MsgBox("Error while getting CURRENT_RECORDID: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
' Return False
' End Try
' End If
' Select Case ACT_EBENE '#### Hier muss nun der Parent-Record gesetzt werden ####
' Case 1
' EBENE1_RECID = CURRENT_RECORD_ID
' Case 2
' EBENE2_RECID = CURRENT_RECORD_ID
' Case 3
' EBENE3_RECID = CURRENT_RECORD_ID
' End Select
' Update_Record_Label(CURRENT_RECORD_ID)
' Return True
'End Function
Private Function GET_PARENT_RECORD(LINKED_RECORD As Integer)
Try
Dim sqlRecord As String = String.Format("SELECT T.RECORD2_ID FROM TBPMO_RECORD_CONNECT T, TBPMO_RECORD T1 WHERE T.RECORD2_ID = T1.GUID AND T.RECORD1_ID = {0} AND T1.FORM_ID = (SELECT PARENT_ID FROM TBPMO_FORM WHERE GUID = {1})", LINKED_RECORD, CURRENT_FORM_ID)
Dim PARENT_RECORD = ClassDatabase.Execute_Scalar(sqlRecord, True)
Dim sql As String = String.Format("SELECT T.RECORD2_ID FROM TBPMO_RECORD_CONNECT T, TBPMO_RECORD T1 WHERE T.RECORD2_ID = T1.GUID AND T.RECORD1_ID = {0} and T1.FORM_ID = {1}", LINKED_RECORD, CURRENT_FORM_ID)
' Dim sqlRecord As String = String.Format("SELECT T.RECORD2_ID FROM TBPMO_RECORD_CONNECT T, TBPMO_RECORD T1 WHERE T.RECORD2_ID = T1.GUID AND T.RECORD1_ID = {0} AND T1.FORM_ID = (SELECT PARENT_ID FROM TBPMO_FORM WHERE GUID = {1})", LINKED_RECORD, CURRENT_FORM_ID)
Dim PARENT_RECORD = ClassDatabase.Execute_Scalar(sql, True)
Dim LINK_EXISTS = String.Format("SELECT COUNT(T.GUID) FROM TBPMO_RECORD_CONNECT T, TBPMO_RECORD T1 WHERE T.RECORD2_ID = T1.GUID AND T.RECORD1_ID = {0} and T1.FORM_ID = {1}", PARENT_RECORD, CURRENT_FORM_ID)
If ClassDatabase.Execute_Scalar(LINK_EXISTS) = 0 Then
If ClassControlCommandsUI.CreateRecord(CURRENT_FORM_ID) = True Then
@ -1882,33 +1929,41 @@ Public Class frmForm_Constructor_Main_2
MsgBox("Error in HideColumns_Pos:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
End Sub
Sub Show_Selected_Record_Data(GRID_RECORD As Integer)
Sub Show_Selected_Record_Data(RECORD_ID As Integer, EntityLoad As Boolean)
Try
Update_Status_Label(False, "")
If LogErrorsOnly = False Then ClassLogger.Add(">> GRID_RECORD ID: " & GRID_RECORD.ToString, False)
If LogErrorsOnly = False Then ClassLogger.Add(">> GRID_RECORD ID: " & RECORD_ID.ToString, False)
'Me.pnlDetails.Visible = True
ZeigeRecordLogsToolStripMenuItem.Enabled = False
If CURRENT_FORM_TYPE = 5 Or IS_SINGLE_RECORD = True Then '#### Es sind untergeordnete Entitäten geöffnet####
If CURRENT_FORM_TYPE = 5 And EntityLoad = False Or IS_SINGLE_RECORD = True And EntityLoad = False Then '#### Es sind untergeordnete Entitäten geöffnet####
Dim pID As Integer
Select Case ACT_EBENE '#### Hier muss nun der Parent-Record gewählt werden ####
Case 3
Dim parent_ID = GET_PARENT_RECORD(GRID_RECORD)
Dim parent_ID = GET_PARENT_RECORD(RECORD_ID)
If parent_ID > 0 Then
EBENE2_RECID = parent_ID
PARENT_RECORDID = parent_ID
CURRENT_PARENTID = parent_ID
pID = parent_ID
EBENE2_RECID = RECORD_ID
PARENT_RECORDID = RECORD_ID
CURRENT_PARENTID = RECORD_ID
pID = RECORD_ID
End If
Case Else
PARENT_RECORDID = GRID_RECORD
Case 2
Dim parent_ID = GET_PARENT_RECORD(RECORD_ID)
If parent_ID > 0 Then
EBENE1_RECID = RECORD_ID
PARENT_RECORDID = RECORD_ID
CURRENT_PARENTID = RECORD_ID
pID = RECORD_ID
End If
Case 1
PARENT_RECORDID = RECORD_ID
EBENE1_RECID = PARENT_RECORDID
CURRENT_PARENTID = PARENT_RECORDID
pID = PARENT_RECORDID
End Select
'#### Den Group or Single_Record holen/anlegen
GET_GROUP_OR_SINGLE_RECORD(pID)
GET_GROUP_OR_SINGLE_RECORD(pID, False)
Else '#### Datensatz wird normal geladen ####
SELECTED_RECORD_ID = GRID_RECORD
SELECTED_RECORD_ID = RECORD_ID
CURRENT_RECORD_ID = SELECTED_RECORD_ID
'Die aktuelle Ebene überprüfen und den Datensatz übergeben, ebenso den PARENT-Record setzen
Select Case ACT_EBENE

View File

@ -23,27 +23,29 @@ Public Class frmMain
LabelUser.Caption = Environment.UserName
LabelMachine.Caption = My.Computer.Name
SetBackground()
Dim splash As New frmSplash()
splash.ShowDialog()
If USER_IS_ADMIN = True Then
pageAdmin.Visible = True
End If
LabelLoggedIn.Caption = "Anzahl Angemeldete User: " & USERS_LOGGED_IN.ToString()
'LoadMenuItems()
LoadMenuItems2()
LoadQuickStartItems()
VWPMO_WF_USER_ACTIVETableAdapter.Connection.ConnectionString = MyConnectionString
VWPMO_WF_USER_ACTIVETableAdapter.Connection.ConnectionString = MyConnectionString
Load_Connection_Dep_Data()
Catch ex As Exception
MsgBox("Error in Load Form:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
End Sub
Sub Load_Connection_Dep_Data()
SetBackground()
Dim splash As New frmSplash()
splash.ShowDialog()
If USER_IS_ADMIN = True Then
pageAdmin.Visible = True
End If
LabelLoggedIn.Caption = "Anzahl Angemeldete User: " & USERS_LOGGED_IN.ToString()
'LoadMenuItems()
LoadMenuItems2()
LoadQuickStartItems()
VWPMO_WF_USER_ACTIVETableAdapter.Connection.ConnectionString = MyConnectionString
VWPMO_WF_USER_ACTIVETableAdapter.Connection.ConnectionString = MyConnectionString
End Sub
Private Sub frmMain_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
Try
Dim sql = "UPDATE TBDD_USER SET LOGGED_IN = @LogInOut, LOGGED_WHERE = '@ANGEMELDETWO' WHERE (LOWER(USERNAME) = LOWER('@user'))"
@ -305,11 +307,6 @@ Public Class frmMain
OpenFormOverview()
Cursor = Cursors.Default
End Sub
Private Sub DaenbankverbindungToolStripMenuItem_Click(sender As Object, e As EventArgs)
frmConfig_Basic.ShowDialog()
End Sub
Private Sub KalenderToolStripMenuItem_Click(sender As Object, e As EventArgs)
Cursor = Cursors.WaitCursor
OpenFormCalendar()
@ -438,6 +435,9 @@ Public Class frmMain
Private Sub itemSettings_ItemClick(sender As Object, e As ItemClickEventArgs) Handles itemSettings.ItemClick
frmConfig_Basic.ShowDialog()
If CONNECTION_CHANGED = True Then
Load_Connection_Dep_Data()
End If
End Sub
Private Sub BarButtonItem3_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem3.ItemClick