This commit is contained in:
JenneJ
2016-06-02 15:48:10 +02:00
10 changed files with 67 additions and 46 deletions

View File

@@ -408,7 +408,7 @@ Public Class ClassControlBuilder
Select row1.Item("VALUE")).ToList()
ClassControlValues.LoadControlValue(CURRENT_RECORD_ID, CURRENT_PARENT_ID, dependingControlId, dependingControl, values, CURRENT_FORM_ID)
ClassControlValues.LoadControlValue(CURRENT_RECORD_ID, CURRENT_PARENT_RECORD_ID, dependingControlId, dependingControl, values, CURRENT_FORM_ID)
Case "Label"
If dt.Rows.Count = 1 Then

View File

@@ -412,6 +412,20 @@ Public Class ClassControlValues
Dim connID = row.Item("CONTROL_CONNID_1")
Dim sqlcommand As String = row.Item("SQL")
If ParentRecordId = 0 And CURRENT_ACT_LEVEL > 1 Then
'eigentlich sollte eine Parent_RecordID da sein
Try
Dim _SQL = String.Format("SELECT RECORD1_ID FROM TBPMO_RECORD_CONNECT WHERE RECORD2_ID = {0}", RecordId)
Dim ParentRec = ClassDatabase.Execute_Scalar(_SQL)
If Not IsNothing(ParentRec) Then
If ParentRec > 0 Then
ParentRecordId = ParentRec
End If
End If
Catch ex As Exception
ClassLogger.Add("Unexpected Error in Getting Parent-Record cause PRecord was 0: " & ex.Message)
End Try
End If
sqlcommand = ReplaceSqlCommandPlaceholders(sqlcommand, RecordId, ParentRecordId, entity_ID)
@@ -543,7 +557,7 @@ Public Class ClassControlValues
End Try
End Select
End If
Next
@@ -757,7 +771,7 @@ Public Class ClassControlValues
vorgabe = defaultValue.Replace("@FORM_ID", CURRENT_FORM_ID)
vorgabe = vorgabe.Replace("@RECORD_ID", CURRENT_RECORD_ID)
vorgabe = vorgabe.Replace("@RECORDID", CURRENT_RECORD_ID)
vorgabe = vorgabe.Replace("@PARENTRECORD_ID", CURRENT_PARENT_ID)
vorgabe = vorgabe.Replace("@PARENTRECORD_ID", CURRENT_PARENT_ENTITY_ID)
defaultValue = ClassDatabase.Execute_Scalar(vorgabe.ToString, True)
If IsNothing(vorgabe) Then
textbox.Text = ""

View File

@@ -1,6 +1,5 @@
Imports Oracle.ManagedDataAccess.Client
Imports System.Data.Odbc
Public Class ClassDatabase
Private Shared connectionString As String
@@ -145,7 +144,7 @@ Public Class ClassDatabase
SQLcommand = SQLconnect.CreateCommand
'Update Last Created Record in Foo
SQLcommand.CommandText = ExecuteCMD
SQLcommand.ExecuteNonQuery()
SQLcommand.Dispose()
SQLconnect.Close()
@@ -180,7 +179,7 @@ Public Class ClassDatabase
MsgBox("No ConnectionID for Conn-ID: " & ConnID.ToString, MsgBoxStyle.Exclamation)
Return Nothing
End If
Catch ex As Exception
ClassLogger.Add("Error in Execute_non_Query_withConn: " & ex.Message, True)
ClassLogger.Add("SQL: " & ExecuteCMD, False)

View File

@@ -65,7 +65,7 @@ Public Class ClassImport_Windream
Return False
End If
indexname = dt.Rows(0).Item("IDXNAME_PARENTID").ToString
idxvalue = CURRENT_PARENT_ID
idxvalue = CURRENT_PARENT_ENTITY_ID
If LogErrorsOnly = False Then ClassLogger.Add(" >> Parent-ID: " & idxvalue.ToString, False)
indexierung_erfolgreich = ClassWindream.DateiIndexieren(CURRENT_FILEIN_WD, indexname, idxvalue)
If indexierung_erfolgreich = False Then

View File

@@ -6,8 +6,9 @@
' Diese Werte müssen später zur Laufzeit geladen werden
Public CURRENT_FORM_ID As Integer
Public CURRENT_PARENT_ID As Integer
Public CURRENT_PARENT_ENTITY_ID As Integer
Public CURRENT_PARENT_RECORD_ID As Integer
Public CURRENT_ACT_LEVEL As Integer
Public CURRENT_ENTITYSTRING As String = ""

View File

@@ -23,7 +23,7 @@ Public Class frmChooseParentRecord
End Sub
Sub HideColumns()
Try
Dim SQL As String = "SELECT CONTROL_ID, CONTROL_COL_NAME, CONTROL_SHOW_COLUMN FROM VWPMO_CONTROL_SCREEN WHERE CONTROL_SHOW_COLUMN = 0 AND FORM_ID = " & CURRENT_PARENT_ID
Dim SQL As String = "SELECT CONTROL_ID, CONTROL_COL_NAME, CONTROL_SHOW_COLUMN FROM VWPMO_CONTROL_SCREEN WHERE CONTROL_SHOW_COLUMN = 0 AND FORM_ID = " & CURRENT_PARENT_ENTITY_ID
Dim DT As DataTable = ClassDatabase.Return_Datatable(SQL)
Dim cols As DevExpress.XtraGrid.Columns.GridColumnCollection = GridView.Columns
@@ -103,7 +103,7 @@ Public Class frmChooseParentRecord
End Sub
Sub Save_GridLayout()
Try
Dim Filename As String = String.Format("PARENT_GRID_{0}-UserLayout.xml", CURRENT_PARENT_ID.ToString)
Dim Filename As String = String.Format("PARENT_GRID_{0}-UserLayout.xml", CURRENT_PARENT_ENTITY_ID.ToString)
Dim XMLPATH = System.IO.Path.Combine(Application.UserAppDataPath(), Filename)
GridView.SaveLayoutToXml(XMLPATH)
Catch ex As Exception
@@ -113,7 +113,7 @@ Public Class frmChooseParentRecord
End Sub
Sub Load_GridLayout()
Try
Dim Filename As String = String.Format("PARENT_GRID_{0}-UserLayout.xml", CURRENT_PARENT_ID.ToString)
Dim Filename As String = String.Format("PARENT_GRID_{0}-UserLayout.xml", CURRENT_PARENT_ENTITY_ID.ToString)
Dim XMLPATH = System.IO.Path.Combine(Application.UserAppDataPath(), Filename)
If File.Exists(XMLPATH) Then
GridView.RestoreLayoutFromXml(XMLPATH)

View File

@@ -125,7 +125,7 @@ Public Class frmConstructor_Main
Private LOAD_DIRECT As Boolean = False
Private IS_SINGLE_RECORD As Boolean = False
Private RECORD_ID As Integer
Private PARENT_ID As Integer
Private PARENT_ENTITYID As Integer
Private SQL_RIGHT_READ_AND_VIEW_ONLY As String = ""
Private SQL_RIGHT_WINDREAM_FORBIDDEN As String = ""
@@ -521,6 +521,7 @@ Public Class frmConstructor_Main
'Grid zurücksetzen
Clear_Grid_View()
ACT_EBENE = 0
CURRENT_ACT_LEVEL = 0
ACT_EBENE_STRING = ""
EBENE1_ENTITY = ""
EBENE1_RECID = 0
@@ -800,7 +801,7 @@ Public Class frmConstructor_Main
' muss vor show selected record data kommen,
' sodass die datasource für die angehakten werte existiert (checked list box)
CtrlBuilder.WatchRecordChanges = False
ClassControlValues.LoadControlValuesListWithPlaceholders(ENTITY_ID, Grid_RecordID, PARENT_ID, CtrlBuilder.AllControls, ENTITY_ID)
ClassControlValues.LoadControlValuesListWithPlaceholders(ENTITY_ID, Grid_RecordID, PARENT_RECORDID, CtrlBuilder.AllControls, ENTITY_ID)
CtrlBuilder.WatchRecordChanges = True
Show_Selected_Record_Data(Grid_RecordID, False)
Dim sw1 As New Stopwatch
@@ -1084,14 +1085,16 @@ Public Class frmConstructor_Main
Dim parentNode As TreeNode = TryCast(SelectedNode.Parent, TreeNode)
ACT_EBENE = 2
CURRENT_ACT_LEVEL = 2
If parentNode IsNot Nothing Then
Dim grandParentNode As TreeNode = TryCast(parentNode.Parent, TreeNode)
If grandParentNode IsNot Nothing Then
ACT_EBENE = 3
CURRENT_ACT_LEVEL = 3
End If
Else
ACT_EBENE = 1
CURRENT_ACT_LEVEL = 1
End If
Dim result = (From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
@@ -1133,7 +1136,7 @@ Public Class frmConstructor_Main
If childNodeLevel1.Text = "Allgemein" Then
Console.WriteLine("Allgemein-Reiter")
End If
Dim result As Integer = ReturnAmountofRecords(childNodeLevel1.Tag, PARENT_ID)
Dim result As Integer = ReturnAmountofRecords(childNodeLevel1.Tag)
If result <> 99999999 Then
Dim origtext As String = childNodeLevel1.Text
If origtext.Contains(" (") Then
@@ -1166,7 +1169,7 @@ Public Class frmConstructor_Main
MsgBox("Error in Get_RecordCounts_Nodes:" & vbNewLine & ex.Message, MsgBoxStyle.Exclamation)
End Try
End Sub
Function ReturnAmountofRecords(EntityID As Integer, PARENT_ID As Integer)
Function ReturnAmountofRecords(EntityID As Integer)
' Statt eine Table zurückzugeben, können wir die anzahl der Zeilen auch in der Datenbank berechnen,
' dadurch wird die Abfrage um einiges schneller
Dim SQL As String = "SELECT COUNT(*) FROM ( SELECT T.* FROM VWTEMP_PMO_FORM" & EntityID & " AS T,TBPMO_RECORD_CONNECT T1 WHERE T.[Record-ID] = T1.RECORD2_ID AND T1.RECORD1_ID = @RecordID ) x"
@@ -1330,11 +1333,8 @@ Public Class frmConstructor_Main
#Region "DetailView - Toolstrip"
Private Sub tsButtonAdd_Click(sender As Object, e As EventArgs) Handles tsButtonAdd.Click
' Vor dem Hinzufügen muss der EditMode auf jeden Fall ausgeschaltet werden!!
DisableEditMode()
'Wenn es eine Parent_ID gibt aber kein PArent_Datensatz ausgewählt wurde muss dies nachgeholt werden
If PARENT_ID > 0 Then
If PARENT_ENTITYID > 0 Then
If PARENT_SKIPPED = True And PARENT_RECORDID = 0 Then
Dim msg = "Achtung es wurde noch kein Parent-Datensatz ausgewählt! Bitte wählen Sie einen Datensatz aus!"
If USER_LANGUAGE <> "de-DE" Then
@@ -1345,7 +1345,7 @@ Public Class frmConstructor_Main
Dim sql
sql = "select * from VWTEMP_PMO_FORM" & PARENT_ID.ToString
sql = "select * from VWTEMP_PMO_FORM" & PARENT_ENTITYID.ToString
CURRENT_PARENT_DT = ClassDatabase.Return_Datatable(sql, "VariableSelect ParentEntity")
frmChooseParentRecord.ShowDialog()
If CURRENT_PARENT_RECORD_ID = 0 Then
@@ -1374,24 +1374,24 @@ Public Class frmConstructor_Main
tsButtonShowWorkflowTasks.Enabled = True
tsButtonCancel.Visible = True
CURRENT_PARENT_ID = PARENT_ID
CURRENT_PARENT_ENTITY_ID = PARENT_ENTITYID
' Den Record anlegen, damit wir eine RECORD_ID bekommen
ClassControlCommandsUI.CreateRecord(ENTITY_ID)
' Die RECORD_ID auslesen und setzen
NEW_RECORD_ID = ClassControlCommandsUI.GetLastRecord()
CURRENT_RECORD_ID = NEW_RECORD_ID
RECORD_ID = NEW_RECORD_ID
SELECTED_RECORD_ID = NEW_RECORD_ID
If PARENT_ID > 0 And PARENT_RECORDID > 0 Then
Dim NewRecordId As Integer = ClassControlCommandsUI.GetLastRecord()
CURRENT_RECORD_ID = NewRecordId
RECORD_ID = NewRecordId
SELECTED_RECORD_ID = NewRecordId
If PARENT_ENTITYID > 0 And PARENT_RECORDID > 0 Then
If ClassControlCommandsUI.ConnectRecord(PARENT_RECORDID, CURRENT_RECORD_ID, "INSERT RECORD") = False Then
MsgBox("Unexpected Error in Connect Record - Please check the logfile and inform the admin!", MsgBoxStyle.Critical)
End If
End If
ClassControlValues.LoadDefaultValues(ENTITY_ID, SELECTED_RECORD_ID, pnlDetails.Controls, CURRENT_PARENT_ID, ENTITY_ID)
ClassControlValues.LoadDefaultValues(ENTITY_ID, SELECTED_RECORD_ID, pnlDetails.Controls, CURRENT_PARENT_ENTITY_ID, ENTITY_ID)
' Das StatusLabel aktualisieren
Update_Record_Label(NEW_RECORD_ID)
Update_Record_Label(NewRecordId)
' Im gegensatz zu EnableEditMode muss hier nur der save button enabled werden
tsButtonSave.Enabled = True
' Muss aktiviert werden, sonst funktionieren die Combobox Abhängigkeits Events nicht
@@ -1451,7 +1451,7 @@ Public Class frmConstructor_Main
End If
End If
If TrySave_User() = False Then
' Cursor zurücksetzen
Me.Cursor = Cursors.Default
@@ -1560,7 +1560,13 @@ Public Class frmConstructor_Main
Return False
End Try
tsButtonCancel.Visible = False
If CtrlCommandUI.IsInsert Then
tsButtonSave.Enabled = False
tsButtonCancel.Visible = False
Else
' DisableEditMode()
End If
CtrlCommandUI.IsInsert = False
EDIT_STATE = EditState.None
RECORD_CHANGED = False
@@ -1684,7 +1690,7 @@ Public Class frmConstructor_Main
' Abhängige Listen laden
CtrlBuilder.WatchRecordChanges = False
'ClassControlValues.LoadControlValuesListWithPlaceholders(ENTITY_ID, RECORD_ID, PARENT_ID, CtrlBuilder.AllControls, ENTITY_ID)
ClassControlValues.Enable_Depending_Controls(ENTITY_ID, RECORD_ID, PARENT_ID, CtrlBuilder.AllControls, ENTITY_ID)
ClassControlValues.Enable_Depending_Controls(ENTITY_ID, RECORD_ID, PARENT_RECORDID, CtrlBuilder.AllControls, ENTITY_ID)
CtrlBuilder.WatchRecordChanges = True
RECORD_ENABLED = True
@@ -1883,8 +1889,8 @@ Public Class frmConstructor_Main
Dim result1 = (From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
Select form
Where form.Item("FORM_ID") = ENTITY_ID).Single()
PARENT_ID = result1.Item("PARENT_ID")
CURRENT_PARENT_ID = PARENT_ID
PARENT_ENTITYID = result1.Item("PARENT_ID")
CURRENT_PARENT_ENTITY_ID = PARENT_ENTITYID
'Abhängig von der Entität die Selektierungs-Daten laden
Get_Grid_Sql(CONSTRUCTORID, ENTITY_ID, CURRENT_CONSTRUCTOR_DETAIL_ID)
@@ -2186,7 +2192,7 @@ Public Class frmConstructor_Main
'Daten zu Record in jedem Fall laden
'ClassControlValues.LoadControlValues(SELECTED_RECORD_ID, ENTITY_ID, CtrlBuilder.AllControls)
CtrlBuilder.WatchRecordChanges = False
ClassControlValues.LoadControlValues(SELECTED_RECORD_ID, PARENT_ID, ENTITY_ID, CtrlBuilder.AllControls, ENTITY_ID)
ClassControlValues.LoadControlValues(SELECTED_RECORD_ID, PARENT_RECORDID, ENTITY_ID, CtrlBuilder.AllControls, ENTITY_ID)
CtrlBuilder.WatchRecordChanges = True
' Laden der Daten bedeutet nicht dass Daten vom Benutzer geändert wurden!
RECORD_CHANGED = False
@@ -2724,7 +2730,7 @@ Public Class frmConstructor_Main
Case 0
ENTITY_RELOAD_AFT_CONTROL_LOAD = False
CtrlBuilder.WatchRecordChanges = False
ClassControlValues.LoadControlValues(SELECTED_RECORD_ID, PARENT_ID, ENTITY_ID, CtrlBuilder.AllControls, ENTITY_ID)
ClassControlValues.LoadControlValues(SELECTED_RECORD_ID, PARENT_RECORDID, ENTITY_ID, CtrlBuilder.AllControls, ENTITY_ID)
CtrlBuilder.WatchRecordChanges = True
If windream_Docshow = True Then
@@ -4145,7 +4151,7 @@ Public Class frmConstructor_Main
Dim split() = Wert.Split(";")
If IsNumeric(split(1)) Then
CURRENT_FILEID = split(1)
CURRENT_PARENT_ID = PARENT_ID
CURRENT_PARENT_ENTITY_ID = PARENT_ENTITYID
CURRENT_RECORD_ID = RECORD_ID
CURRENT_FORMVIEW_ID = FORMVIEW_ID
frmWD_Index_Dokart.ShowDialog()
@@ -4211,7 +4217,7 @@ Public Class frmConstructor_Main
For Each Filerow As DataRow In DT.Rows
'Dim datei = Str.ToString.Replace("@DROPFROMFSYSTEM@", "")
CURRENT_FILEID = Filerow.Item(0)
CURRENT_PARENT_ID = PARENT_ID
CURRENT_PARENT_ENTITY_ID = PARENT_ENTITYID
CURRENT_RECORD_ID = RECORD_ID
CURRENT_FORM_ID = ENTITY_ID
CURRENT_FORMVIEW_ID = FORMVIEW_ID
@@ -4462,6 +4468,7 @@ Public Class frmConstructor_Main
Private Sub ResetEbenenAuswahlToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ResetEbenenAuswahlToolStripMenuItem.Click
ACT_EBENE = 0
CURRENT_ACT_LEVEL = 0
ACT_EBENE_STRING = ""
EBENE1_ENTITY = ""
EBENE1_RECID = 0
@@ -4474,7 +4481,7 @@ Public Class frmConstructor_Main
End Sub
Private Sub DateiimportEntitätToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DateiimportEntitätToolStripMenuItem.Click
If PARENT_ID = 0 Then
If PARENT_ENTITYID = 0 Then
Exit Sub
End If
CURRENT_ENTITYSTRING = _ENTITYSTRING
@@ -4729,7 +4736,7 @@ Public Class frmConstructor_Main
If Not IsNothing(recid) Then
'Die neue Record-ID setzen
POS_RECORD_ID = recid
ClassControlCommandsUI.ConnectRecord(PARENT_ID, POS_RECORD_ID, "POS_LINK for Entity " & POS_ENTITY.ToString)
ClassControlCommandsUI.ConnectRecord(PARENT_RECORDID, POS_RECORD_ID, "POS_LINK for Entity " & POS_ENTITY.ToString)
Else
MsgBox("Unexpected Error in Creating POS", MsgBoxStyle.Exclamation)
End If
@@ -4865,7 +4872,7 @@ Public Class frmConstructor_Main
Dim sql
sql = "select * from VWTEMP_PMO_FORM" & PARENT_ID.ToString
sql = "select * from VWTEMP_PMO_FORM" & PARENT_ENTITYID.ToString
CURRENT_PARENT_DT = ClassDatabase.Return_Datatable(sql, "VariableSelect ParentEntity")
frmChooseParentRecord.ShowDialog()

View File

@@ -414,8 +414,8 @@ Public Class frmFormInput
RefreshRecordByID(SelectedRecordID)
ClassControlValues.LoadControlValuesList(thisformid, pnlView.Controls)
ClassControlValues.LoadControlValuesListWithPlaceholders(thisformid, SelectedRecordID, CURRENT_PARENT_ID, pnlView.Controls, 99)
ClassControlValues.LoadControlValues(SelectedRecordID, CURRENT_PARENT_ID, thisformid, pnlView.Controls, 99)
ClassControlValues.LoadControlValuesListWithPlaceholders(thisformid, SelectedRecordID, CURRENT_PARENT_RECORD_ID, pnlView.Controls, 99)
ClassControlValues.LoadControlValues(SelectedRecordID, CURRENT_PARENT_RECORD_ID, thisformid, pnlView.Controls, 99)
End If
load_Documents()
End If

View File

@@ -158,7 +158,7 @@ Public Class frmWD_EntityImport
MsgBox("Error in indexing file Entity - See log", MsgBoxStyle.Critical)
End If
indexname = dt.Rows(0).Item("IDXNAME_PARENTID").ToString
idxvalue = CURRENT_PARENT_ID
idxvalue = CURRENT_PARENT_ENTITY_ID
If LogErrorsOnly = False Then ClassLogger.Add(" >> Parent-ID: " & idxvalue.ToString, False)
indexierung_erfolgreich = ClassWindream.DateiIndexieren(CURRENT_FILEIN_WD, indexname, idxvalue)
If indexierung_erfolgreich = False Then MsgBox("Error in indexing file Parent-ID - See log", MsgBoxStyle.Critical)
@@ -266,7 +266,7 @@ Public Class frmWD_EntityImport
ListView1.Items.Add(DT.Rows(0).Item("IDXNAME_ENTITYID").ToString)
ListView1.Items(count).SubItems.Add(CURRENT_FORM_ID)
ListView1.Items.Add(DT.Rows(0).Item("IDXNAME_PARENTID").ToString)
ListView1.Items(count + 1).SubItems.Add(CURRENT_PARENT_ID)
ListView1.Items(count + 1).SubItems.Add(CURRENT_PARENT_ENTITY_ID)
End If
End If
End Sub

View File

@@ -72,7 +72,7 @@ Public Class frmWD_Index_Dokart
End If
'den Parent-Key auslesen
indexname = dt.Rows(0).Item("IDXNAME_PARENTID").ToString
idxvalue = CURRENT_PARENT_ID
idxvalue = CURRENT_PARENT_ENTITY_ID
If LogErrorsOnly = False Then ClassLogger.Add(" >> Parent-ID: " & idxvalue.ToString, False)
indexierung_erfolgreich = ClassWindream.DateiIndexieren(CURRENT_FILEIN_WD, indexname, idxvalue)
If indexierung_erfolgreich = False Then