This commit is contained in:
SchreiberM
2016-05-23 16:54:50 +02:00
2 changed files with 203 additions and 169 deletions

View File

@@ -405,10 +405,13 @@
stopwatch.Start()
End Sub
Public Sub Done()
Public Function Done() As Long
stopwatch.Stop()
Console.WriteLine("{0} took {1} milliseconds to complete", label, stopwatch.ElapsedMilliseconds)
End Sub
Dim message = String.Format("{0} took {1} milliseconds to complete", label, stopwatch.ElapsedMilliseconds)
Console.WriteLine(message)
If LogErrorsOnly = False Then ClassLogger.Add(message, False)
Return stopwatch.ElapsedMilliseconds
End Function
End Class

View File

@@ -221,8 +221,8 @@ Public Class frmConstructor_Main
Me.VWPMO_WF_ACTIVETableAdapter.Connection.ConnectionString = MyConnectionString
Dim SQL = String.Format("SELECT *, [dbo].[FNPMO_GETOBJECTCAPTION]('{0}','FORMVIEW_TITLE' + CONVERT(VARCHAR(5), FORM_VIEW_ID), {1}) AS 'CAPTION' " & _
"FROM VWPMO_CONSTRUCTOR_FORMS WHERE SCREEN_ID = {2} AND CONSTRUCT_ID = {3} ORDER BY SEQUENCE", USER_LANGUAGE, CURRENT_SCREEN_ID, CURRENT_SCREEN_ID, CONSTRUCTORID)
DT_VWPMO_CONSTRUCTOR_FORMS = ClassDatabase.Return_Datatable(SQL)
DT_VWPMO_CONSTRUCTOR_FORMS = ClassDatabase.Return_Datatable(SQL)
DT_CONSTRUCT_VIEW = ClassDatabase.Return_Datatable("SELECT * FROM TBPMO_FORM_CONSTRUCTOR WHERE GUID = " & CONSTRUCTORID)
If DT_CONSTRUCT_VIEW.Rows.Count = 1 Then
'Load Input Grid
@@ -241,7 +241,6 @@ Public Class frmConstructor_Main
'System.Windows.Forms.MessageBox.Show(ex.Message)
End Try
Me.Cursor = Cursors.Default
End Sub
#Region "Layout"
@@ -565,28 +564,6 @@ Public Class frmConstructor_Main
End Sub
'Public Function Get_Grid_Sql(ConstructorId As Integer, FormId As Integer)
' If GRID_TYPE = GridType.Grid Then
' _ENTITYSQL = "SELECT T.* FROM VWTEMP_PMO_FORM" & FormId.ToString & " T"
' Else 'Tiles und Carousel bekommen Quick View
' _ENTITYSQL = String.Format("SELECT SQL_QUICK_VIEW FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = {0} AND FORM_ID = {1}", ConstructorId, FormId)
' _ENTITYSQL = ClassDatabase.Execute_Scalar(_ENTITYSQL, True)
' If _ENTITYSQL = String.Empty Then
' _ENTITYSQL = "SELECT T.* FROM VWTEMP_PMO_FORM" & FormId.ToString & " T"
' If IS_SINGLE_RECORD = True Or FORM_TYPE = 5 Then
' Else
' GRID_TYPE = GridType.Grid
' GridControlMain.MainView = grvwGrid
' VIEW_ID = 3
' End If
' GridControlMain.MainView = grvwGrid
' End If
' End If
'End Function
Public Function Get_Grid_Sql(ConstructorId As Integer, FormId As Integer, ConstructorDetailID As Integer)
Try
If GRID_TYPE = GridType.Grid Then
@@ -594,19 +571,13 @@ Public Class frmConstructor_Main
_VIEWNAME = "VWTEMP_PMO_FORM" & FormId.ToString
_ENTITYSQL = "SELECT T.* FROM VWTEMP_PMO_FORM" & FormId.ToString & " T"
Else 'Tiles und Carousel bekommen Quick View
' Define the filter
Dim DT As DataTable = DT_VWPMO_CONSTRUCTOR_FORMS
Dim filter As String = "FORM_ID = " & FormId & " AND SCREEN_ID = " & CURRENT_SCREEN_ID
' Filter the rows using Select() method of DataTable
Dim FilteredRows As DataRow() = DT.Select(filter)
' LINQ für Zugriff auf DT_VWPMO_CONSTRUCTOR_FORMS
Dim query = From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
Select form
Where form.Item("FORM_ID") = FormId
For Each row As DataRow In FilteredRows
_ENTITYSQL = row("SQL_QUICK_VIEW")
' ListBox1.Items.Add(String.Format("{0}, {1}", row("CompanyName"), row("City")))
Next
_ENTITYSQL = query.Single().Item("SQL_QUICK_VIEW")
' _ENTITYSQL = String.Format("SELECT SQL_QUICK_VIEW FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = {0} AND FORM_ID = {1} AND SCREEN_ID = {2}", ConstructorId, FormId, CURRENT_SCREEN_ID)
' _ENTITYSQL = ClassDatabase.Execute_Scalar(_ENTITYSQL, True)
If _ENTITYSQL = String.Empty Then
_ENTITYSQL = "SELECT T.* FROM VWTEMP_PMO_FORM" & FormId.ToString & " T"
If IS_SINGLE_RECORD = True Or FORM_TYPE = 5 Then
@@ -1018,88 +989,83 @@ Public Class frmConstructor_Main
End Sub
Sub Load_Tree_View(ConstructorId As Integer)
Dim sw As New Stopwatch
sw.Start()
Dim sw As New SW("Load_Tree_View")
TreeViewMain.Nodes.Clear()
Dim SQL As String
Dim DT, DT2, DT3 As DataTable
' Daten für Level1 Nodes Laden
SQL = String.Format("SELECT *, [dbo].[FNPMO_GETOBJECTCAPTION]('{0}','FORMVIEW_TITLE' + CONVERT(VARCHAR(5), FORM_VIEW_ID), {1}) AS 'CAPTION' " & _
"from VWPMO_CONSTRUCTOR_FORMS WHERE PARENT_ID = 0 AND CONSTRUCT_ID = {2} AND SCREEN_ID = {3} ORDER BY SEQUENCE", USER_LANGUAGE, CURRENT_SCREEN_ID, ConstructorId, CURRENT_SCREEN_ID)
DT = ClassDatabase.Return_Datatable(SQL)
' LINQ für Zugriff auf DT_VWPMO_CONSTRUCTOR_FORMS
Dim query1 = From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
Select form
Order By form.Item("SEQUENCE")
Where form.Item("PARENT_ID") = 0
If DT Is Nothing Then
Exit Sub
End If
Dim Rows1 = query1.ToList()
If DT.Rows.Count >= 1 Then
For Each Row1 As DataRow In DT.Rows
Dim LEVEL1_NODE As TreeNode
Dim LEVEL2_NODE As TreeNode
Dim LEVEL3_NODE As TreeNode
Dim LEVEL1_TITLE = Row1.Item("CAPTION").ToString
Dim LEVEL1_ID = Row1.Item("FORM_ID").ToString
For Each Row1 In Rows1
' Rootnode erstellen und taggen
LEVEL1_NODE = New TreeNode(LEVEL1_TITLE)
LEVEL1_NODE.Tag = LEVEL1_ID
Dim LEVEL1_NODE As TreeNode
Dim LEVEL2_NODE As TreeNode
Dim LEVEL3_NODE As TreeNode
' TreeView Rootnode einfügen
Dim LEVEL1_TITLE = Row1.Item("CAPTION").ToString
Dim LEVEL1_ID = Row1.Item("FORM_ID").ToString
TreeViewMain.Nodes.Add(LEVEL1_NODE)
Dim SQL2 As String
' Daten für Level2 Nodes Laden
SQL2 = String.Format("SELECT *, [dbo].[FNPMO_GETOBJECTCAPTION]('{0}','FORMVIEW_TITLE' + CONVERT(VARCHAR(5), FORM_VIEW_ID), {1}) AS 'CAPTION' " & _
"FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = {2} AND PARENT_ID = {3} ORDER BY SEQUENCE", USER_LANGUAGE, CURRENT_SCREEN_ID, ConstructorId, LEVEL1_ID)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Level2 Nodes SQL: " & SQL2, False)
DT2 = ClassDatabase.Return_Datatable(SQL2)
' Rootnode erstellen und taggen
LEVEL1_NODE = New TreeNode(LEVEL1_TITLE)
LEVEL1_NODE.Tag = LEVEL1_ID
If Not (DT2 Is Nothing) Then
For Each row As DataRow In DT2.Rows
Dim LEVEL2_TITLE As String = row.Item("CAPTION").ToString
Dim LEVEL2_ID As Integer = row.Item("FORM_ID")
Dim LEVEL2_PARENT_ID As Integer = row.Item("PARENT_ID")
' TreeView Rootnode einfügen
TreeViewMain.Nodes.Add(LEVEL1_NODE)
' Node erstellen..
LEVEL2_NODE = New TreeNode(LEVEL2_TITLE)
LEVEL2_NODE.Tag = LEVEL2_ID
' ..und einfügen
LEVEL1_NODE.Nodes.Add(LEVEL2_NODE)
' LINQ für Zugriff auf DT_VWPMO_CONSTRUCTOR_FORMS
Dim query2 = From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
Select form
Order By form.Item("SEQUENCE")
Where form.Item("PARENT_ID") = LEVEL1_ID
' Daten für Level3 Nodes laden
SQL = String.Format("SELECT *, [dbo].[FNPMO_GETOBJECTCAPTION]('{0}','FORMVIEW_TITLE' + CONVERT(VARCHAR(5), FORM_VIEW_ID), {1}) AS 'CAPTION' " & _
"FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = {2} AND PARENT_ID = {3} ORDER BY SEQUENCE", USER_LANGUAGE, CURRENT_SCREEN_ID, ConstructorId, LEVEL2_ID)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Level3 Nodes SQL " & SQL, False)
DT3 = ClassDatabase.Return_Datatable(SQL)
Dim Rows2 = query2.ToList()
For Each subrow As DataRow In DT3.Rows
Dim LEVEL3_TITLE As String = subrow.Item("CAPTION")
Dim LEVEL3_ID As Integer = subrow.Item("FORM_ID")
For Each Row2 In Rows2
' Node erstellen..
LEVEL3_NODE = New TreeNode(LEVEL3_TITLE)
LEVEL3_NODE.Tag = LEVEL3_ID
' ..und einfügen
LEVEL2_NODE.Nodes.Add(LEVEL3_NODE)
Next
Next
Dim LEVEL2_TITLE As String = Row2.Item("CAPTION").ToString
Dim LEVEL2_ID As Integer = Row2.Item("FORM_ID")
Dim LEVEL2_PARENT_ID As Integer = Row2.Item("PARENT_ID")
End If
' Node erstellen..
LEVEL2_NODE = New TreeNode(LEVEL2_TITLE)
LEVEL2_NODE.Tag = LEVEL2_ID
' ..und einfügen
LEVEL1_NODE.Nodes.Add(LEVEL2_NODE)
' LINQ für Zugriff auf DT_VWPMO_CONSTRUCTOR_FORMS
Dim query3 = From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
Select form
Order By form.Item("SEQUENCE")
Where form.Item("PARENT_ID") = LEVEL2_ID
Dim Rows3 = query3.ToList()
For Each Row3 In Rows3
Dim LEVEL3_TITLE As String = Row3.Item("CAPTION")
Dim LEVEL3_ID As Integer = Row3.Item("FORM_ID")
' Node erstellen..
LEVEL3_NODE = New TreeNode(LEVEL3_TITLE)
LEVEL3_NODE.Tag = LEVEL3_ID
' ..und einfügen
LEVEL2_NODE.Nodes.Add(LEVEL3_NODE)
Next
Next
Next
TreeViewMain.ExpandAll()
TreeViewMain.Nodes(0).EnsureVisible()
Dim elapsed As Double
elapsed = sw.Elapsed.TotalSeconds
sw.Stop()
sw.Reset()
If LogErrorsOnly = False Then ClassLogger.Add(" >> TreeView Load took " & Format(elapsed, "0.000000000") & " seconds", False)
End If
TreeViewMain.ExpandAll()
TreeViewMain.Nodes(0).EnsureVisible()
sw.Done()
End Sub
Sub Load_Tree_View_Data()
Dim sw As New Stopwatch
@@ -1122,8 +1088,14 @@ Public Class frmConstructor_Main
Else
ACT_EBENE = 1
End If
Dim Sql = "SELECT GUID from VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID
CONSTRUCTOR_DETAIL_ID = ClassDatabase.Execute_Scalar(Sql, True)
Dim result = (From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
Select form
Where form.Item("FORM_ID") = ENTITY_ID).Single()
CONSTRUCTOR_DETAIL_ID = result.Item("GUID")
'Dim Sql = "SELECT GUID from VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID
'CONSTRUCTOR_DETAIL_ID = ClassDatabase.Execute_Scalar(Sql, True)
Dim elapsed As Double
elapsed = sw.Elapsed.TotalSeconds
@@ -1145,6 +1117,12 @@ Public Class frmConstructor_Main
Dim PARENT_ID As Integer
Dim TYPE_ID As Integer
If a = 0 Then
'Dim result = (From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
' Select form
' Where form.Item("FORM_ID") = childNodeLevel1.Tag).Single()
'PARENT_ID = result.Item("PARENT_ID")
'TYPE_ID = result.Item("FORM_TYPE_ID")
Dim sql As String = "SELECT PARENT_ID, FORM_TYPE_ID FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & childNodeLevel1.Tag & " AND SCREEN_ID = " & CURRENT_SCREEN_ID
Dim DT As DataTable = ClassDatabase.Return_Datatable(sql, "ShowNodeAmounts")
PARENT_ID = DT.Rows(0).Item(0)
@@ -1827,9 +1805,8 @@ Public Class frmConstructor_Main
End Sub
Sub Load_Entity_Data(ClickedLevel As Integer)
Try
Dim sw As New Stopwatch
sw.Start()
Dim elapsed As Double
Dim sw As New SW("Load_Entity_Data")
Me.Cursor = Cursors.WaitCursor
RECORD_CHANGED = False
RECORD_ID = 0
@@ -1837,14 +1814,28 @@ Public Class frmConstructor_Main
'Setzen von Rechten
'GetSet_Rights()
'VerknüpfungenToolStripMenuItem.Enabled = False
Dim result = (From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
Select form
Where form.Item("FORM_ID") = ENTITY_ID).Single()
LOAD_DIRECT = result.Item("LOAD_DIRECT")
CURRENT_CONSTRUCTOR_DETAIL_ID = result.Item("GUID")
CONTROL_DOCTYPE_MATCH = result.Item("CONTROL_DOCTYPE_MATCH")
SQL_RIGHT_READ_AND_VIEW_ONLY = result.Item("SQL_RIGHT_READ_AND_VIEW_ONLY")
SQL_RIGHT_WINDREAM_FORBIDDEN = result.Item("SQL_RIGHT_WINDREAM_VIEW")
'LOAD_DIRECT = ClassDatabase.Execute_Scalar("SELECT LOAD_DIRECT FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID)
'CURRENT_CONSTRUCTOR_DETAIL_ID = ClassDatabase.Execute_Scalar("SELECT GUID FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID)
'CONTROL_DOCTYPE_MATCH = ClassDatabase.Execute_Scalar("SELECT CONTROL_DOCTYPE_MATCH FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID)
'SQL_RIGHT_READ_AND_VIEW_ONLY = ClassDatabase.Execute_Scalar("SELECT SQL_RIGHT_READ_AND_VIEW_ONLY FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID)
'SQL_RIGHT_WINDREAM_FORBIDDEN = ClassDatabase.Execute_Scalar("SELECT SQL_RIGHT_WINDREAM_VIEW FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID)
FORM_TYPE = ClassDatabase.Execute_Scalar("SELECT FORM_TYPE_ID FROM TBPMO_FORM WHERE GUID = " & ENTITY_ID)
IS_SINGLE_RECORD = ClassDatabase.Execute_Scalar("SELECT SINGLE_RECORD FROM TBPMO_FORM WHERE GUID = " & ENTITY_ID)
LOAD_DIRECT = ClassDatabase.Execute_Scalar("SELECT LOAD_DIRECT FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID)
CURRENT_CONSTRUCTOR_DETAIL_ID = ClassDatabase.Execute_Scalar("SELECT GUID FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID)
POS_ENTITY = ClassDatabase.Execute_Scalar("SELECT POS_ENTITY FROM TBPMO_FORM WHERE GUID = " & ENTITY_ID)
CONTROL_DOCTYPE_MATCH = ClassDatabase.Execute_Scalar("SELECT CONTROL_DOCTYPE_MATCH FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID)
SQL_RIGHT_READ_AND_VIEW_ONLY = ClassDatabase.Execute_Scalar("SELECT SQL_RIGHT_READ_AND_VIEW_ONLY FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID)
SQL_RIGHT_WINDREAM_FORBIDDEN = ClassDatabase.Execute_Scalar("SELECT SQL_RIGHT_WINDREAM_VIEW FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID)
If VIEW_ID_RUNTIME <> -1 Then
GRID_TYPE_ID = VIEW_ID_RUNTIME
Else
@@ -1870,8 +1861,15 @@ Public Class frmConstructor_Main
End Select
SELECTED_RECORD_ID = 0
Dim DT As DataTable
Dim sql As String = "SELECT PARENT_ID FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID
Dim PARENT_ID = ClassDatabase.Execute_Scalar(sql)
' LINQ für Zugriff auf DT_VWPMO_CONSTRUCTOR_FORMS
Dim result1 = (From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
Select form
Where form.Item("FORM_ID") = ENTITY_ID).Single()
Dim PARENT_ID = result1.Item("PARENT_ID")
'Dim sql As String = "SELECT PARENT_ID FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID
'Dim PARENT_ID = ClassDatabase.Execute_Scalar(sql)
If PARENT_ID Is Nothing Then
MsgBox("Error in GetParentID for selectedNode - Check Logfile", MsgBoxStyle.Exclamation)
Exit Sub
@@ -1879,8 +1877,7 @@ Public Class frmConstructor_Main
'Abhängig von der Entität die Selektierungs-Daten laden
Get_Grid_Sql(CONSTRUCTORID, ENTITY_ID, CURRENT_CONSTRUCTOR_DETAIL_ID)
elapsed = sw.Elapsed.TotalSeconds
If LogErrorsOnly = False Then ClassLogger.Add(" >> Get_Grid_Sql took " & Format(elapsed, "0.000000000") & " seconds", False)
'Anzahl der Datensätze
ENTITY_RECORD_COUNT = ClassDatabase.Execute_Scalar("SELECT COUNT(*) FROM TBPMO_RECORD where FORM_ID = " & ENTITY_ID, True)
Select Case ClickedLevel
@@ -1902,7 +1899,13 @@ Public Class frmConstructor_Main
'tslblEntity2.Visible = False
'tslblEntity3.Visible = False
EBENE1_COLUMNNAME = ClassDatabase.Execute_Scalar("SELECT COLUMN_NAME1 FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID)
Dim result2 = (From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
Select form
Where form.Item("FORM_ID") = ENTITY_ID).Single()
EBENE1_COLUMNNAME = result2.Item("COLUMN_NAME1")
'EBENE1_COLUMNNAME = ClassDatabase.Execute_Scalar("SELECT COLUMN_NAME1 FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID)
EBENE2_COLUMNNAME = ""
EBENE3_COLUMNNAME = ""
EBENE2_GRID_RESULT = Nothing
@@ -1949,7 +1952,12 @@ Public Class frmConstructor_Main
' End If
'End Select
EBENE2_COLUMNNAME = ClassDatabase.Execute_Scalar("SELECT COLUMN_NAME1 FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID)
Dim result3 = (From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
Select form
Where form.Item("FORM_ID") = ENTITY_ID).Single()
EBENE2_COLUMNNAME = result3.Item("COLUMN_NAME1")
'EBENE2_COLUMNNAME = ClassDatabase.Execute_Scalar("SELECT COLUMN_NAME1 FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID)
EBENE3_COLUMNNAME = ""
EBENE2_GRID_RESULT = Nothing
EBENE3_GRID_RESULT = Nothing
@@ -1959,7 +1967,12 @@ Public Class frmConstructor_Main
ACT_EBENE_STRING = EBENE3_ENTITY
If LogErrorsOnly = False Then ClassLogger.Add(" >> Level 3 selected in TreeView", False)
EBENE3_COLUMNNAME = ClassDatabase.Execute_Scalar("SELECT COLUMN_NAME1 FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID)
Dim result4 = (From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
Select form
Where form.Item("FORM_ID") = ENTITY_ID).Single()
EBENE3_COLUMNNAME = result4.Item("COLUMN_NAME1")
'EBENE3_COLUMNNAME = ClassDatabase.Execute_Scalar("SELECT COLUMN_NAME1 FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & ENTITY_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID)
'Wenn bereits ein Record für Ebene 1 gewählt wurde dann eisnchränken
If EBENE2_RECID > 0 Then
'Parent-ID setzen
@@ -1995,8 +2008,7 @@ Public Class frmConstructor_Main
EBENE3_GRID_RESULT = Nothing
End Select
elapsed = sw.Elapsed.TotalSeconds - elapsed
If LogErrorsOnly = False Then ClassLogger.Add(" >> Select Case entities took " & Format(elapsed, "0.000000000") & " seconds", False)
_ENTITYSTRING = ACT_EBENE_STRING
PARENT_ID = PARENT_RECORDID
act_FormViewID = ClassDatabase.Execute_Scalar("SELECT GUID FROM TBPMO_FORM_VIEW where FORM_ID = " & ENTITY_ID)
@@ -2157,10 +2169,8 @@ Public Class frmConstructor_Main
elapsed = sw.Elapsed.TotalSeconds
sw.Stop()
sw.Reset()
If LogErrorsOnly = False Then ClassLogger.Add(" >> Load_Entity_Data took " & Format(elapsed, "0.000000000") & " seconds", False)
sw.Done()
If ENTITY_RELOAD_AFT_CONTROL_LOAD = True Then
Reload_Entity_while_Control_Load()
End If
@@ -3276,14 +3286,14 @@ Public Class frmConstructor_Main
End If
TabWindream.Text = stg & " (" & windreamSucheErgebnisse.Count & ")"
' AxObjectListControl.SetIconMode(True)
' AxObjectListControl.RemoveAllColumnHeader()
' Me.AxObjectListControl.SetSession(ClassWindream.oSession, "", "")
AxObjectListControl.SetIconMode(True)
AxObjectListControl.RemoveAllColumnHeader()
Me.AxObjectListControl.SetSession(ClassWindream.oSession, "", "")
'Change the status icon
'ICON STATES:
' Me.AxObjectListControl.SetStatusIcon(0)
Me.AxObjectListControl.SetStatusIcon(0)
'Change the icon
' Me.AxObjectListControl.SetStatusIcon(2)
Me.AxObjectListControl.SetStatusIcon(2)
Try
Dim sql_ResultList = "select * from TBPMO_WINDREAM_RESULTLIST_CONFIG where guid = 1"
@@ -3305,7 +3315,7 @@ Public Class frmConstructor_Main
'You need to use the column name here
'Please note that some attributes or indices will not be displayed
'Try not to add the same header twice, it will throw cause problems if you do that
' Me.AxObjectListControl.AddColumnHeader(ColumnName, Width)
Me.AxObjectListControl.AddColumnHeader(ColumnName, Width)
anzparam += 1
End If
End If
@@ -3343,7 +3353,7 @@ Public Class frmConstructor_Main
'You need to use the column name here
'Please note that some attributes or indices will not be displayed
'Try not to add the same header twice, it will throw cause problems if you do that
' Me.AxObjectListControl.AddColumnHeader(spar, width)
Me.AxObjectListControl.AddColumnHeader(spar, width)
Next
End If
@@ -3355,22 +3365,22 @@ Public Class frmConstructor_Main
Dim results As WINDREAMLib.WMObjects = windreamSucheErgebnisse
If LogErrorsOnly = False Then ClassLogger.Add(" >> results loaded ", False)
'Set the contents without displaying them
' AxObjectListControl.SetContentsEx(results)
AxObjectListControl.SetContentsEx(results)
'Change the icon
'AxObjectListControl.SetStatusIcon(5)
AxObjectListControl.SetStatusIcon(5)
'Display the results...
'The Previous Object Count
Dim poc As Integer = 0
'Display new objects, as long as the objectcount changes after displaying the objects
'Do Until (poc <> AxObjectListControl.GetObjectCount)
' poc = AxObjectListControl.GetObjectCount
' 'If you want, you can display more items at a timeRefresh_FollowUp_TabHeader
' 'But do not display to many at a time or the user interface could freeze
' 'Maybe try 50
' AxObjectListControl.DisplayResults(WDResultListCount)
'Loop
' AxObjectListControl.SetStatusIcon(3)
Do Until (poc <> AxObjectListControl.GetObjectCount)
poc = AxObjectListControl.GetObjectCount
'If you want, you can display more items at a timeRefresh_FollowUp_TabHeader
'But do not display to many at a time or the user interface could freeze
'Maybe try 50
AxObjectListControl.DisplayResults(WDResultListCount)
Loop
AxObjectListControl.SetStatusIcon(3)
Else
Dim msg = "Windream-Dokumente für Record: " & RECORD_ID & " - Keine Dateien gefunden"
If USER_LANGUAGE <> "de-DE" Then
@@ -3905,7 +3915,7 @@ Public Class frmConstructor_Main
ClassLogger.Add(" >> Undefined Search-pattern in windream-search config: " & content, True)
End Select
End Function
Private Sub AxObjectListControl_ItemClicked(sender As Object, e As EventArgs)
Private Sub AxObjectListControl_ItemClicked(sender As Object, e As EventArgs) Handles AxObjectListControl.ItemClicked
CheckDocView()
End Sub
@@ -3914,8 +3924,8 @@ Public Class frmConstructor_Main
Dim sw As New Stopwatch
sw.Start()
' AxObjectListControl.RemoveAllColumnHeader()
' Me.AxObjectListControl.ClearResultList()
AxObjectListControl.RemoveAllColumnHeader()
Me.AxObjectListControl.ClearResultList()
Dim stg As String = "windream-Dateien"
If USER_LANGUAGE <> "de-DE" Then
stg = "windream-files"
@@ -3932,10 +3942,10 @@ Public Class frmConstructor_Main
End Sub
Sub CheckDocView()
' Dim _index = AxObjectListControl.GetFirstSelectedObject
' Dim path As String = AxObjectListControl.GetObjectPath(_index)
' path = path.Replace("?", vWLaufwerk)
' DocViewString = path
Dim _index = AxObjectListControl.GetFirstSelectedObject
Dim path As String = AxObjectListControl.GetObjectPath(_index)
path = path.Replace("?", vWLaufwerk)
DocViewString = path
If WD_ShowDocs = True Then
CloseWDDocview()
@@ -4669,16 +4679,28 @@ Public Class frmConstructor_Main
Dim sw As Stopwatch = Stopwatch.StartNew()
Dim elapsed As Double
Dim sql As String = "SELECT * from VWPMO_CONSTRUCTOR_FORMS WHERE PARENT_ID = 0 AND CONSTRUCT_ID = " & CONSTRUCTORID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID & " ORDER BY SEQUENCE"
Dim dt As DataTable = ClassDatabase.Return_Datatable(sql)
If Not IsNothing(dt) Then
If dt.Rows.Count >= 1 Then
Dim tn As TreeNode = TreeViewMain.Nodes(0)
TreeViewMain.SelectedNode = tn
TreeViewMain.Select()
End If
' LINQ für Zugriff auf DT_VWPMO_CONSTRUCTOR_FORMS
Dim result = From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
Select form
Order By form.Item("SEQUENCE")
Where form.Item("PARENT_ID") = 0
If result.Count >= 1 Then
Dim tn As TreeNode = TreeViewMain.Nodes(0)
TreeViewMain.SelectedNode = tn
TreeViewMain.Select()
End If
'Dim sql As String = "SELECT * from VWPMO_CONSTRUCTOR_FORMS WHERE PARENT_ID = 0 AND CONSTRUCT_ID = " & CONSTRUCTORID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID & " ORDER BY SEQUENCE"
'Dim dt As DataTable = ClassDatabase.Return_Datatable(sql)
'If Not IsNothing(dt) Then
' If dt.Rows.Count >= 1 Then
' Dim tn As TreeNode = TreeViewMain.Nodes(0)
' TreeViewMain.SelectedNode = tn
' TreeViewMain.Select()
' End If
'End If
elapsed = sw.Elapsed.TotalSeconds
sw.Stop()
If LogErrorsOnly = False Then ClassLogger.Add(String.Format(" >> Load_Level1 took {0} to load", Format(elapsed, "0.000000000") & " seconds"), False)
@@ -4832,25 +4854,34 @@ Public Class frmConstructor_Main
Sub Load_ParentConnections()
Try
' SELECT COLUMN_NAME1 FROM VWTEMP_cPMO_FORM
Dim sql = String.Format("SELECT TOP 1 PARENT_ID, [dbo].[FNPMO_GETOBJECTCAPTION]('{0}','FORMVIEW_TITLE' + CONVERT(VARCHAR(5), FORM_VIEW_ID), {1}) AS 'FORM_TITLE' " & _
"from VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = {2} AND SCREEN_ID = {3} AND FORM_ID = {4}", USER_LANGUAGE, CURRENT_SCREEN_ID, CONSTRUCTORID, CURRENT_SCREEN_ID, ENTITY_ID)
Dim DT As DataTable = ClassDatabase.Return_Datatable(sql, "Parent-Data")
'Dim sql = String.Format("SELECT TOP 1 PARENT_ID, [dbo].[FNPMO_GETOBJECTCAPTION]('{0}','FORMVIEW_TITLE' + CONVERT(VARCHAR(5), FORM_VIEW_ID), {1}) AS 'FORM_TITLE' " & _
' "from VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = {2} AND SCREEN_ID = {3} AND FORM_ID = {4}", USER_LANGUAGE, CURRENT_SCREEN_ID, CONSTRUCTORID, CURRENT_SCREEN_ID, ENTITY_ID)
'Dim DT As DataTable = ClassDatabase.Return_Datatable(sql, "Parent-Data")
Dim Parent_ID = DT.Rows(0).Item(0)
Dim Title = DT.Rows(0).Item(1)
Dim Colname = "[" & ClassDatabase.Execute_Scalar("SELECT TOP 1 COLUMN_NAME1 from VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & Parent_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID, True) & "]"
' TODO: LINQ für Zugriff auf DT_VWPMO_CONSTRUCTOR_FORMS
Dim result = (From form In DT_VWPMO_CONSTRUCTOR_FORMS.AsEnumerable()
Select form
Where form.Item("FORM_ID") = ENTITY_ID).Single()
Dim Parent_ID = result.Item("PARENT_ID")
Dim Title = result.Item("CAPTION")
Dim Colname = "[" & result.Item("COLUMN_NAME1") & "]"
'Dim Parent_ID = DT.Rows(0).Item(0)
'Dim Title = DT.Rows(0).Item(1)
'Dim Colname = "[" & ClassDatabase.Execute_Scalar("SELECT TOP 1 COLUMN_NAME1 from VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = " & CONSTRUCTORID & " AND FORM_ID = " & Parent_ID & " AND SCREEN_ID = " & CURRENT_SCREEN_ID, True) & "]"
'Load_GridViewParentEntity_Layout()
If Not IsNothing(Parent_ID) And Not IsNothing(Colname) Then
Dim sql
If Colname = "[]" Then
sql = "select * from VWTEMP_PMO_FORM" & Parent_ID.ToString
Sql = "select * from VWTEMP_PMO_FORM" & Parent_ID.ToString
Else
Try
sql = "select [Record-ID], " & Colname & " from VWTEMP_PMO_FORM" & Parent_ID.ToString
Sql = "select [Record-ID], " & Colname & " from VWTEMP_PMO_FORM" & Parent_ID.ToString
Catch ex As Exception
sql = "select * from VWTEMP_PMO_FORM" & Parent_ID.ToString
Sql = "select * from VWTEMP_PMO_FORM" & Parent_ID.ToString
End Try
End If
Dim DTGrid As DataTable = ClassDatabase.Return_Datatable(sql, "VariableSelect ParentEntity")
Dim DTGrid As DataTable = ClassDatabase.Return_Datatable(Sql, "VariableSelect ParentEntity")
GridControlParent.DataSource = Nothing
GridViewParent.Columns.Clear()
'Databinding Neu
@@ -4987,15 +5018,15 @@ Public Class frmConstructor_Main
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
End Sub
Private Sub AxObjectListControl_CausesValidationChanged(sender As Object, e As EventArgs)
Private Sub AxObjectListControl_CausesValidationChanged(sender As Object, e As EventArgs) Handles AxObjectListControl.CausesValidationChanged
Console.WriteLine("CausesValidationChanged")
End Sub
Private Sub AxObjectListControl_SettingFlagChanged(sender As Object, e As EventArgs)
Private Sub AxObjectListControl_SettingFlagChanged(sender As Object, e As EventArgs) Handles AxObjectListControl.SettingFlagChanged
Console.WriteLine("SettingFlagChanged")
End Sub
Private Sub AxObjectListControl_Validated(sender As Object, e As EventArgs)
Private Sub AxObjectListControl_Validated(sender As Object, e As EventArgs) Handles AxObjectListControl.Validated
Console.WriteLine("Validated")
End Sub