Imports System Imports System.Data Imports System.Data.SqlTypes Imports System.Data.SqlClient Namespace edokaDB Public Class TreeEntry Public Dokumentartnr As Long Public ParentID As Long Public Sort As Long Public ImageIndex As Long Public OpenImageIndex As Long Public Mandant As Long Public Aktiv As Long Public Erstellt_am As DateTime Public mutiert_am As DateTime Public mutierer As Long Public beschreibung As String Public bezeichnung As String Public deleted As Boolean Public sprache As Long End Class Public Class TreeEntries Inherits CollectionBase Public Function Add(ByVal value As TreeEntry) As TreeEntry Me.InnerList.Add(value) Add = value End Function End Class Public Class clsMyDokumentart Inherits edokaDB.clsDokumentart Dim m_selectpartner As Boolean Property SelectPartner() As Boolean Get Return m_selectpartner End Get Set(ByVal Value As Boolean) m_selectpartner = Value End Set End Property Dim m_pagedirection As Integer Property PageDirection() As Integer Get Return m_pagedirection End Get Set(ByVal Value As Integer) m_pagedirection = Value End Set End Property Dim m_FirstEntry As Integer Property FirstEntry() As Integer Get Return m_FirstEntry End Get Set(ByVal Value As Integer) m_FirstEntry = Value End Set End Property Dim m_searchstring As String Property SearchString() As String Get Return m_searchstring End Get Set(ByVal Value As String) m_searchstring = Value End Set End Property Dim m_LastEntry As Integer Property LastEntry() As Integer Get Return m_LastEntry End Get Set(ByVal Value As Integer) m_LastEntry = Value End Set End Property Dim m_Refresh As Boolean = False Property Refresh() As Boolean Get Return m_Refresh End Get Set(ByVal Value As Boolean) m_Refresh = Value End Set End Property Dim m_Geschaeftsfall As String Property Geschaeftsfall() As String Get Return m_Geschaeftsfall End Get Set(ByVal Value As String) m_Geschaeftsfall = Value End Set End Property #Region "EDEX_Dokumentpakete" Public Function SelectHierarchy_Favoriten_dp_makopie(ByVal mitarbeiternr As Integer) As DataTable Dim scmCmdToExecute As SqlCommand = New SqlCommand() scmCmdToExecute.CommandText = "dbo.[edex_sp_favoritenhierarchie_select]" scmCmdToExecute.CommandType = CommandType.StoredProcedure Dim dtToReturn As DataTable = New DataTable("Dokumentart") Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) ' // Use base class' connection object scmCmdToExecute.Connection = m_scoMainConnection Try scmCmdToExecute.Parameters.Add(New SqlParameter("@isprache", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.Sprache)) scmCmdToExecute.Parameters.Add(New SqlParameter("@imandant", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.MandantNr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@imitarbeiternr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, mitarbeiternr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) If m_bMainConnectionIsCreatedLocal Then ' // Open connection. m_scoMainConnection.Open() Else If m_cpMainConnectionProvider.bIsTransactionPending Then scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction End If End If ' // Execute query. sdaAdapter.Fill(dtToReturn) m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then ' // Throw error. Throw New Exception("Stored Procedure 'pr_sysadminfunktion_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) End If Return dtToReturn Catch ex As Exception ' // some error occured. Bubble it to caller and encapsulate Exception object Throw New Exception("clsdokumentart:select_hierarchy_kd." + ex.Message, ex) Finally If m_bMainConnectionIsCreatedLocal Then ' // Close connection. m_scoMainConnection.Close() End If scmCmdToExecute.Dispose() sdaAdapter.Dispose() End Try End Function Public Function SelectDokumentvorlagen(ByVal searchstring As String, ByVal favoriten As Boolean, ByVal filter As Integer) As DataTable Dim scmCmdToExecute As SqlCommand = New SqlCommand() scmCmdToExecute.CommandText = "dbo.[edex_sp_dokumentvorlagen]" scmCmdToExecute.CommandType = CommandType.StoredProcedure Dim dtToReturn As DataTable = New DataTable("TMPTable") Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) ' // Use base class' connection object scmCmdToExecute.Connection = m_scoMainConnection Try scmCmdToExecute.Parameters.Add(New SqlParameter("@mitarbeiternr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.MitarbeiterNr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@searchstring", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, searchstring)) If favoriten = True Then scmCmdToExecute.Parameters.Add(New SqlParameter("@favoriten", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, 1)) scmCmdToExecute.Parameters.Add(New SqlParameter("@type", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, 0)) Else scmCmdToExecute.Parameters.Add(New SqlParameter("@favoriten", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, 0)) scmCmdToExecute.Parameters.Add(New SqlParameter("@type", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, filter)) End If scmCmdToExecute.Parameters.Add(New SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) If m_bMainConnectionIsCreatedLocal Then ' // Open connection. m_scoMainConnection.Open() Else If m_cpMainConnectionProvider.bIsTransactionPending Then scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction End If End If ' // Execute query. sdaAdapter.Fill(dtToReturn) m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then ' // Throw error. Throw New Exception("Stored Procedure 'edex_sp_dokumentvorlagen' reported the ErrorCode: " & m_iErrorCode.ToString()) End If Return dtToReturn Catch ex As Exception ' // some error occured. Bubble it to caller and encapsulate Exception object Throw New Exception("select_neue_dokumentstruktur::Error occured." + ex.Message, ex) Finally If m_bMainConnectionIsCreatedLocal Then ' // Close connection. m_scoMainConnection.Close() End If scmCmdToExecute.Dispose() sdaAdapter.Dispose() End Try End Function Public Function SelectHierarchy_Favoriten() As DataTable Dim scmCmdToExecute As SqlCommand = New SqlCommand() scmCmdToExecute.CommandText = "dbo.[edex_sp_favoriten_select]" scmCmdToExecute.CommandType = CommandType.StoredProcedure Dim dtToReturn As DataTable = New DataTable("Dokumentart") Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) ' // Use base class' connection object scmCmdToExecute.Connection = m_scoMainConnection Try scmCmdToExecute.Parameters.Add(New SqlParameter("@isprache", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.Sprache)) scmCmdToExecute.Parameters.Add(New SqlParameter("@imandant", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.MandantNr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@imitarbeiternr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.MitarbeiterNr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) If m_bMainConnectionIsCreatedLocal Then ' // Open connection. m_scoMainConnection.Open() Else If m_cpMainConnectionProvider.bIsTransactionPending Then scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction End If End If ' // Execute query. sdaAdapter.Fill(dtToReturn) m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then ' // Throw error. Throw New Exception("Stored Procedure 'pr_sysadminfunktion_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) End If Return dtToReturn Catch ex As Exception ' // some error occured. Bubble it to caller and encapsulate Exception object Throw New Exception("clsdokumentart:select_hierarchy_kd." + ex.Message, ex) Finally If m_bMainConnectionIsCreatedLocal Then ' // Close connection. m_scoMainConnection.Close() End If scmCmdToExecute.Dispose() sdaAdapter.Dispose() End Try End Function Public Function SelectHierarchy_Favoriten_dp() As DataTable Dim scmCmdToExecute As SqlCommand = New SqlCommand() scmCmdToExecute.CommandText = "dbo.[edex_sp_favoritenhierarchie_select]" scmCmdToExecute.CommandType = CommandType.StoredProcedure Dim dtToReturn As DataTable = New DataTable("Dokumentart") Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) ' // Use base class' connection object scmCmdToExecute.Connection = m_scoMainConnection Try scmCmdToExecute.Parameters.Add(New SqlParameter("@isprache", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.Sprache)) scmCmdToExecute.Parameters.Add(New SqlParameter("@imandant", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.MandantNr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@imitarbeiternr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.MitarbeiterNr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) If m_bMainConnectionIsCreatedLocal Then ' // Open connection. m_scoMainConnection.Open() Else If m_cpMainConnectionProvider.bIsTransactionPending Then scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction End If End If ' // Execute query. sdaAdapter.Fill(dtToReturn) m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then ' // Throw error. Throw New Exception("Stored Procedure 'pr_sysadminfunktion_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) End If Return dtToReturn Catch ex As Exception ' // some error occured. Bubble it to caller and encapsulate Exception object Throw New Exception("clsdokumentart:select_hierarchy_kd." + ex.Message, ex) Finally If m_bMainConnectionIsCreatedLocal Then ' // Close connection. m_scoMainConnection.Close() End If scmCmdToExecute.Dispose() sdaAdapter.Dispose() End Try End Function Public Sub Load_Neue_Dokumente_Vollstaendig(ByVal otv As TreeView, ByVal searchstring As String, ByVal Favoriten As Boolean, ByVal filter As Integer) Dim menueintraege As New clsMyDokumentart() Dim menudata As DataTable Dim i As Integer Dim m_collDeletedNodes As Collection Dim collNodeKeys As New Collection() Dim tnNew As TreeNode Dim tnParent As TreeNode Dim lastid As String Dim pid As String lastid = 1 m_collDeletedNodes = Nothing m_collDeletedNodes = New Collection() otv.Nodes.Clear() If Globals.Vorlagendata_Vollstaendig.Rows.Count = 0 Or Me.Refresh = True Or filter <> 0 Then menueintraege.cpMainConnectionProvider = conn menudata = menueintraege.SelectDokumentvorlagen(searchstring, Favoriten, filter) If filter = 0 Then Globals.Vorlagendata_Vollstaendig = menudata Else If searchstring = "" Then menudata = Globals.Vorlagendata_Vollstaendig Else Dim splitter Dim sstring As String = "" If InStr(searchstring, " ", CompareMethod.Text) > 0 Then splitter = Microsoft.VisualBasic.Split(searchstring, " ") Try i = 0 While i < 100 If sstring.Length > 0 Then sstring = sstring + " AND " sstring = sstring + "dt_bezeichnung like '%" + splitter(i) + "%'" i = i + 1 End While Catch sstring = Left(sstring, sstring.Length - 5) End Try Else sstring = "dt_bezeichnung like '%" + searchstring + "%'" End If ' searchstring = searchstring.Replace(" ", "%") ' Dim dview As New DataView(Globals.Vorlagendata, "dt_bezeichnung like '%" + searchstring + "%'", "Parentid, sort", DataViewRowState.CurrentRows) Dim dview As New DataView(Globals.Vorlagendata_Vollstaendig, sstring, "sort, dt_bezeichnung", DataViewRowState.CurrentRows) Dim tbltemp As New DataTable() Dim tbltemp1 As New DataTable() tbltemp = dview.Table.Clone Dim drv As DataRowView For Each drv In dview tbltemp.ImportRow(drv.Row) Try read_to_root_edex(drv, tbltemp) Catch ex As Exception MsgBox(ex.Message) End Try Next 'Globals.Vorlagendata.Select() dview.Dispose() tbltemp1 = dview.Table.Clone Try Dim dview2 As New DataView(tbltemp, "", "sort, dt_bezeichnung", DataViewRowState.CurrentRows) Dim drv2 As DataRowView For Each drv2 In dview2 tbltemp1.ImportRow(drv2.Row) Next menudata = tbltemp1 Catch ex As Exception End Try ' menueintraege.cpMainConnectionProvider = conn ' menudata = menueintraege.SelectNeueDokumente(searchstring, Favoriten, filter) End If End If For i = 0 To menudata.Rows.Count - 1 If menudata.Rows(i).Item("ParentID") = "DA_0" Then tnNew = otv.Nodes.Add(menudata.Rows(i).Item("bezeichnung")) With tnNew .Tag() = menudata.Rows(i).Item("dokumentartnr") .ImageIndex() = menudata.Rows(i).Item("ImageIndex") .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") End With Try collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String)) Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical) End Try Else Try If menudata.Rows(i).Item("dt_bezeichnung") Is System.DBNull.Value Then tnParent = CType(collNodeKeys.Item(CType(menudata.Rows(i).Item("ParentID"), String)), TreeNode) tnNew = tnParent.Nodes.Add(CType(menudata.Rows(i).Item("bezeichnung"), String)) With tnNew .Tag() = CType(menudata.Rows(i).Item("dokumentartnr"), String) .ImageIndex() = menudata.Rows(i).Item("ImageIndex") .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") End With collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String)) Else If lastid <> menudata.Rows(i).Item("dokumentartnr") Then tnParent = CType(collNodeKeys.Item(CType(menudata.Rows(i).Item("ParentID"), String)), TreeNode) tnNew = tnParent.Nodes.Add(CType(menudata.Rows(i).Item("bezeichnung"), String)) With tnNew .Tag() = CType(menudata.Rows(i).Item("dokumentartnr"), String) .ImageIndex() = menudata.Rows(i).Item("ImageIndex") .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") End With collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String)) lastid = menudata.Rows(i).Item("dokumentartnr") pid = lastid End If tnParent = CType(collNodeKeys.Item(CType(pid, String)), TreeNode) tnNew = tnParent.Nodes.Add(CType(menudata.Rows(i).Item("dt_bezeichnung"), String)) With tnNew .Tag() = CType(menudata.Rows(i).Item("dokumenttypnr"), String) .ImageIndex() = menudata.Rows(i).Item("dokimage") .SelectedImageIndex() = menudata.Rows(i).Item("dokimage") End With collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumenttypnr"), String)) End If Catch ex As Exception MsgBox("Dokart:" & menudata.Rows(i).Item("dokumentartnr") & " - " & menudata.Rows(i).Item("dokumenttypnr") & ex.Message, MsgBoxStyle.Critical) End Try End If Next End Sub Public Sub Load_FavoritenStruktur_dp_MAKopie(ByVal mitarbeiternr As Integer, ByVal otv As TreeView, ByVal searchstring As String, ByVal Favoriten As Boolean, Optional ByVal IconOffset As Integer = 0) Dim menueintraege As New clsMyDokumentart() Dim menudata As DataTable Dim i As Integer Dim m_collDeletedNodes As Collection Dim collNodeKeys As New Collection() Dim tnNew As TreeNode Dim tnParent As TreeNode Dim lastid As Long Dim pid As Long lastid = 0 m_collDeletedNodes = Nothing m_collDeletedNodes = New Collection() otv.Nodes.Clear() menueintraege.cpMainConnectionProvider = conn menudata = menueintraege.SelectHierarchy_Favoriten_dp_makopie(mitarbeiternr) Dim DPRoot As Integer = 0 For i = 0 To menudata.Rows.Count - 1 If menudata.Rows(i).Item("imageindex") = 68 Then DPRoot = 1 End If If DPRoot = 1 Then If Microsoft.VisualBasic.Right(menudata.Rows(i).Item("ParentID"), 1) = 0 Then tnNew = otv.Nodes.Add(menudata.Rows(i).Item("bezeichnung")) With tnNew .Tag() = menudata.Rows(i).Item("dokumentartnr") .ImageIndex() = menudata.Rows(i).Item("ImageIndex") .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") End With Try collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String)) Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical) End Try Else Try tnParent = CType(collNodeKeys.Item(CType(menudata.Rows(i).Item("ParentID"), String)), TreeNode) tnNew = tnParent.Nodes.Add(CType(menudata.Rows(i).Item("bezeichnung"), String)) 'Wenn es sich nicht um das Icon 1 = Folder handelt wird der Offset der Icon dazugezählt 'Offset ist >0 wenn in einer Imagelist bereits Icon enthält, bevor die Dokstruktur geladen ist With tnNew .Tag() = CType(menudata.Rows(i).Item("dokumentartnr"), String) If menudata.Rows(i).Item("ImageIndex") > 1 Then .ImageIndex() = menudata.Rows(i).Item("ImageIndex") + IconOffset .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") + IconOffset Else .ImageIndex() = menudata.Rows(i).Item("ImageIndex") .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") End If End With collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String)) Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical) End Try End If End If Next End Sub Public Sub Load_FavoritenStruktur_dp(ByVal otv As TreeView, ByVal searchstring As String, ByVal Favoriten As Boolean, Optional ByVal IconOffset As Integer = 0) Dim menueintraege As New clsMyDokumentart() Dim menudata As DataTable Dim i As Integer Dim m_collDeletedNodes As Collection Dim collNodeKeys As New Collection() Dim tnNew As TreeNode Dim tnParent As TreeNode Dim lastid As Long Dim pid As Long lastid = 0 m_collDeletedNodes = Nothing m_collDeletedNodes = New Collection() otv.Nodes.Clear() menueintraege.cpMainConnectionProvider = conn menudata = menueintraege.SelectHierarchy_Favoriten_dp Dim DPRoot As Integer = 0 For i = 0 To menudata.Rows.Count - 1 If menudata.Rows(i).Item("imageindex") = 68 Then DPRoot = 1 End If If DPRoot = 1 Then If Microsoft.VisualBasic.Right(menudata.Rows(i).Item("ParentID"), 1) = 0 Then tnNew = otv.Nodes.Add(menudata.Rows(i).Item("bezeichnung")) With tnNew .Tag() = menudata.Rows(i).Item("dokumentartnr") .ImageIndex() = menudata.Rows(i).Item("ImageIndex") .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") End With Try collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String)) Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical) End Try Else Try tnParent = CType(collNodeKeys.Item(CType(menudata.Rows(i).Item("ParentID"), String)), TreeNode) tnNew = tnParent.Nodes.Add(CType(menudata.Rows(i).Item("bezeichnung"), String)) 'Wenn es sich nicht um das Icon 1 = Folder handelt wird der Offset der Icon dazugezählt 'Offset ist >0 wenn in einer Imagelist bereits Icon enthält, bevor die Dokstruktur geladen ist With tnNew .Tag() = CType(menudata.Rows(i).Item("dokumentartnr"), String) If menudata.Rows(i).Item("ImageIndex") > 1 Then .ImageIndex() = menudata.Rows(i).Item("ImageIndex") + IconOffset .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") + IconOffset Else .ImageIndex() = menudata.Rows(i).Item("ImageIndex") .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") End If End With collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String)) Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical) End Try End If End If Next End Sub Public Sub Load_FavoritenStruktur(ByVal otv As TreeView, ByVal searchstring As String, ByVal Favoriten As Boolean, Optional ByVal IconOffset As Integer = 0) Dim menueintraege As New clsMyDokumentart() Dim menudata As DataTable Dim i As Integer Dim m_collDeletedNodes As Collection Dim collNodeKeys As New Collection() Dim tnNew As TreeNode Dim tnParent As TreeNode Dim lastid As Long Dim pid As Long lastid = 0 m_collDeletedNodes = Nothing m_collDeletedNodes = New Collection() otv.Nodes.Clear() menueintraege.cpMainConnectionProvider = conn menudata = menueintraege.SelectHierarchy_Favoriten For i = 0 To menudata.Rows.Count - 1 'If Microsoft.VisualBasic.Right(menudata.Rows(i).Item("ParentID"), 1) = 0 And Len(menudata.Rows(i).Item("Parentid")) < 5 Then If Microsoft.VisualBasic.Left(menudata.Rows(i).Item("Parentid"), 4) = "FS_0" Then tnNew = otv.Nodes.Add(menudata.Rows(i).Item("bezeichnung")) With tnNew .Tag() = menudata.Rows(i).Item("strukturnr") ' .Tag() = menudata.Rows(i).Item("dokumentartnr") .ImageIndex() = menudata.Rows(i).Item("ImageIndex") .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") End With Try collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("Strukturnr"), String)) ' collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String)) Catch ex As Exception 'MsgBox(ex.Message, MsgBoxStyle.Critical) End Try Else Try tnParent = CType(collNodeKeys.Item(CType(menudata.Rows(i).Item("ParentID"), String)), TreeNode) tnNew = tnParent.Nodes.Add(CType(menudata.Rows(i).Item("bezeichnung"), String)) 'Wenn es sich nicht um das Icon 1 = Folder handelt wird der Offset der Icon dazugezählt 'Offset ist >0 wenn in einer Imagelist bereits Icon enthält, bevor die Dokstruktur geladen ist With tnNew '.Tag() = CType(menudata.Rows(i).Item("dokumentartnr"), String) .Tag() = CType(menudata.Rows(i).Item("strukturnr"), String) If menudata.Rows(i).Item("ImageIndex") > 1 Then .ImageIndex() = menudata.Rows(i).Item("ImageIndex") + IconOffset .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") + IconOffset Else .ImageIndex() = menudata.Rows(i).Item("ImageIndex") .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") End If End With collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("strukturnr"), String)) ' collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String)) Catch ex As Exception 'MsgBox(ex.Message, MsgBoxStyle.Critical) End Try End If Next End Sub #End Region #Region "Select Hierarchy" Public Function SelectHierarchy() As DataTable Dim scmCmdToExecute As SqlCommand = New SqlCommand() scmCmdToExecute.CommandText = "dbo.[sp_dokumentart_hierarchie]" scmCmdToExecute.CommandType = CommandType.StoredProcedure Dim dtToReturn As DataTable = New DataTable("Dokumentart") Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) ' // Use base class' connection object scmCmdToExecute.Connection = m_scoMainConnection Try scmCmdToExecute.Parameters.Add(New SqlParameter("@isprache", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.Sprache)) scmCmdToExecute.Parameters.Add(New SqlParameter("@imandant", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.MandantNr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) If m_bMainConnectionIsCreatedLocal Then ' // Open connection. m_scoMainConnection.Open() Else If m_cpMainConnectionProvider.bIsTransactionPending Then scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction End If End If ' // Execute query. sdaAdapter.Fill(dtToReturn) m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then ' // Throw error. Throw New Exception("Stored Procedure 'pr_sysadminfunktion_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) End If Return dtToReturn Catch ex As Exception ' // some error occured. Bubble it to caller and encapsulate Exception object Throw New Exception("clsSysadminfunktion::SelectAll::Error occured.", ex) Finally If m_bMainConnectionIsCreatedLocal Then ' // Close connection. m_scoMainConnection.Close() End If scmCmdToExecute.Dispose() sdaAdapter.Dispose() End Try End Function Public Function SelectHierarchy_By_Root(ByVal Root As Integer) As DataTable Dim scmCmdToExecute As SqlCommand = New SqlCommand() scmCmdToExecute.CommandText = "dbo.[sp_get_dokart_tree]" scmCmdToExecute.CommandType = CommandType.StoredProcedure Dim dtToReturn As DataTable = New DataTable("TMPTable") Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) ' // Use base class' connection object scmCmdToExecute.Connection = m_scoMainConnection Try scmCmdToExecute.Parameters.Add(New SqlParameter("@isprache", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.Sprache)) scmCmdToExecute.Parameters.Add(New SqlParameter("@imandant", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.MandantNr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iRoot", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Root)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) If m_bMainConnectionIsCreatedLocal Then ' // Open connection. m_scoMainConnection.Open() Else If m_cpMainConnectionProvider.bIsTransactionPending Then scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction End If End If ' // Execute query. sdaAdapter.Fill(dtToReturn) m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then ' // Throw error. Throw New Exception("Stored Procedure 'pr_sysadminfunktion_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) End If Return dtToReturn Catch ex As Exception ' // some error occured. Bubble it to caller and encapsulate Exception object Throw New Exception("clsSysadminfunktion::SelectAll::Error occured." + ex.Message, ex) Finally If m_bMainConnectionIsCreatedLocal Then ' // Close connection. m_scoMainConnection.Close() End If scmCmdToExecute.Dispose() sdaAdapter.Dispose() End Try End Function Public Function SelectHierarchy_Parametrisierung_By_Root(ByVal Root As Integer) As DataTable Dim scmCmdToExecute As SqlCommand = New SqlCommand() scmCmdToExecute.CommandText = "dbo.[sp_get_dokart_tree_parametrisierung]" scmCmdToExecute.CommandType = CommandType.StoredProcedure Dim dtToReturn As DataTable = New DataTable("TMPTable") Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) ' // Use base class' connection object scmCmdToExecute.Connection = m_scoMainConnection Try scmCmdToExecute.Parameters.Add(New SqlParameter("@isprache", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.Sprache)) scmCmdToExecute.Parameters.Add(New SqlParameter("@imandant", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.MandantNr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iRoot", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Root)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) If m_bMainConnectionIsCreatedLocal Then ' // Open connection. m_scoMainConnection.Open() Else If m_cpMainConnectionProvider.bIsTransactionPending Then scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction End If End If ' // Execute query. sdaAdapter.Fill(dtToReturn) m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then ' // Throw error. Throw New Exception("Stored Procedure 'pr_sysadminfunktion_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) End If Return dtToReturn Catch ex As Exception ' // some error occured. Bubble it to caller and encapsulate Exception object Throw New Exception("clsSysadminfunktion::SelectAll::Error occured." + ex.Message, ex) Finally If m_bMainConnectionIsCreatedLocal Then ' // Close connection. m_scoMainConnection.Close() End If scmCmdToExecute.Dispose() sdaAdapter.Dispose() End Try End Function Public Function SelectHierarchy_by_Partner(ByVal nrpar00 As String) As DataTable Dim scmCmdToExecute As SqlCommand = New SqlCommand() scmCmdToExecute.CommandText = "dbo.[sp_partner_hostdokument_struktur_select]" scmCmdToExecute.CommandType = CommandType.StoredProcedure Dim dtToReturn As DataTable = New DataTable("TMPTable") Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) ' // Use base class' connection object scmCmdToExecute.Connection = m_scoMainConnection Try scmCmdToExecute.Parameters.Add(New SqlParameter("@isprache", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.Sprache)) scmCmdToExecute.Parameters.Add(New SqlParameter("@imandant", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.MandantNr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@nrpar00", SqlDbType.VarChar, 11, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, nrpar00)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) If m_bMainConnectionIsCreatedLocal Then ' // Open connection. m_scoMainConnection.Open() Else If m_cpMainConnectionProvider.bIsTransactionPending Then scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction End If End If ' // Execute query. sdaAdapter.Fill(dtToReturn) m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then ' // Throw error. Throw New Exception("Stored Procedure 'pr_sysadminfunktion_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) End If Return dtToReturn Catch ex As Exception ' // some error occured. Bubble it to caller and encapsulate Exception object Throw New Exception("clsSysadminfunktion::SelectAll::Error occured." + ex.Message, ex) Finally If m_bMainConnectionIsCreatedLocal Then ' // Close connection. m_scoMainConnection.Close() End If scmCmdToExecute.Dispose() sdaAdapter.Dispose() End Try End Function Public Function SelectNeueDokumente(ByVal searchstring As String, ByVal favoriten As Boolean, ByVal filter As Integer) As DataTable Dim scmCmdToExecute As SqlCommand = New SqlCommand() scmCmdToExecute.CommandText = "dbo.[sp_struktur_neue_dokumente]" scmCmdToExecute.CommandType = CommandType.StoredProcedure Dim dtToReturn As DataTable = New DataTable("TMPTable") Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) ' // Use base class' connection object scmCmdToExecute.Connection = m_scoMainConnection Try scmCmdToExecute.Parameters.Add(New SqlParameter("@mitarbeiternr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.MitarbeiterNr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@searchstring", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, searchstring)) If favoriten = True Then scmCmdToExecute.Parameters.Add(New SqlParameter("@favoriten", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, 1)) scmCmdToExecute.Parameters.Add(New SqlParameter("@type", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, 0)) Else scmCmdToExecute.Parameters.Add(New SqlParameter("@favoriten", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, 0)) scmCmdToExecute.Parameters.Add(New SqlParameter("@type", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, filter)) End If scmCmdToExecute.Parameters.Add(New SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) If m_bMainConnectionIsCreatedLocal Then ' // Open connection. m_scoMainConnection.Open() Else If m_cpMainConnectionProvider.bIsTransactionPending Then scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction End If End If ' // Execute query. sdaAdapter.Fill(dtToReturn) m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then ' // Throw error. Throw New Exception("Stored Procedure 'pr_sysadminfunktion_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) End If Return dtToReturn Catch ex As Exception ' // some error occured. Bubble it to caller and encapsulate Exception object Throw New Exception("select_neue_dokumentstruktur::Error occured." + ex.Message, ex) Finally If m_bMainConnectionIsCreatedLocal Then ' // Close connection. m_scoMainConnection.Close() End If scmCmdToExecute.Dispose() sdaAdapter.Dispose() End Try End Function Public Function SelectFavoritentree(ByVal Mitarbeiternr As Long) As DataTable Dim scmCmdToExecute As SqlCommand = New SqlCommand() scmCmdToExecute.CommandText = "dbo.[sp_favoriten_tree]" scmCmdToExecute.CommandType = CommandType.StoredProcedure Dim dtToReturn As DataTable = New DataTable("TMPTable") Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) ' // Use base class' connection object scmCmdToExecute.Connection = m_scoMainConnection Try scmCmdToExecute.Parameters.Add(New SqlParameter("@mitarbeiternr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.MitarbeiterNr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) If m_bMainConnectionIsCreatedLocal Then ' // Open connection. m_scoMainConnection.Open() Else If m_cpMainConnectionProvider.bIsTransactionPending Then scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction End If End If ' // Execute query. sdaAdapter.Fill(dtToReturn) m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then ' // Throw error. Throw New Exception("Stored Procedure 'pr_sysadminfunktion_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) End If Return dtToReturn Catch ex As Exception ' // some error occured. Bubble it to caller and encapsulate Exception object Throw New Exception("select_neue_dokumentstruktur::Error occured." + ex.Message, ex) Finally If m_bMainConnectionIsCreatedLocal Then ' // Close connection. m_scoMainConnection.Close() End If scmCmdToExecute.Dispose() sdaAdapter.Dispose() End Try End Function Public Function SelectHierarchy_KD(ByVal nrpar00 As Long) As DataTable Dim scmCmdToExecute As SqlCommand = New SqlCommand() scmCmdToExecute.CommandText = "dbo.[sp_trefferliste_select]" scmCmdToExecute.CommandType = CommandType.StoredProcedure Dim dtToReturn As DataTable = New DataTable("Dokumentart") Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) ' // Use base class' connection object scmCmdToExecute.Connection = m_scoMainConnection Try scmCmdToExecute.Parameters.Add(New SqlParameter("@nrpar00", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, nrpar00)) scmCmdToExecute.Parameters.Add(New SqlParameter("@isprache", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.Sprache)) scmCmdToExecute.Parameters.Add(New SqlParameter("@imandant", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.MandantNr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) If m_bMainConnectionIsCreatedLocal Then ' // Open connection. m_scoMainConnection.Open() Else If m_cpMainConnectionProvider.bIsTransactionPending Then scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction End If End If ' // Execute query. sdaAdapter.Fill(dtToReturn) m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then ' // Throw error. Throw New Exception("Stored Procedure 'pr_sysadminfunktion_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) End If Return dtToReturn Catch ex As Exception ' // some error occured. Bubble it to caller and encapsulate Exception object Throw New Exception("clsdokumentart:select_hierarchy_kd." + ex.Message, ex) Finally If m_bMainConnectionIsCreatedLocal Then ' // Close connection. m_scoMainConnection.Close() End If scmCmdToExecute.Dispose() sdaAdapter.Dispose() End Try End Function 'Public Function SelectHierarchy_Favoriten() As DataTable ' Dim scmCmdToExecute As SqlCommand = New SqlCommand() ' scmCmdToExecute.CommandText = "dbo.[sp_favoritenhierarchie_select]" ' scmCmdToExecute.CommandType = CommandType.StoredProcedure ' Dim dtToReturn As DataTable = New DataTable("Dokumentart") ' Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) ' ' // Use base class' connection object ' scmCmdToExecute.Connection = m_scoMainConnection ' Try ' scmCmdToExecute.Parameters.Add(New SqlParameter("@isprache", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.Sprache)) ' scmCmdToExecute.Parameters.Add(New SqlParameter("@imandant", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.MandantNr)) ' scmCmdToExecute.Parameters.Add(New SqlParameter("@imitarbeiternr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.MitarbeiterNr)) ' scmCmdToExecute.Parameters.Add(New SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) ' If m_bMainConnectionIsCreatedLocal Then ' ' // Open connection. ' m_scoMainConnection.Open() ' Else ' If m_cpMainConnectionProvider.bIsTransactionPending Then ' scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction ' End If ' End If ' ' // Execute query. ' sdaAdapter.Fill(dtToReturn) ' m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) ' If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then ' ' // Throw error. ' Throw New Exception("Stored Procedure 'pr_sysadminfunktion_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) ' End If ' Return dtToReturn ' Catch ex As Exception ' ' // some error occured. Bubble it to caller and encapsulate Exception object ' Throw New Exception("clsdokumentart:select_hierarchy_kd." + ex.Message, ex) ' Finally ' If m_bMainConnectionIsCreatedLocal Then ' ' // Close connection. ' m_scoMainConnection.Close() ' End If ' scmCmdToExecute.Dispose() ' sdaAdapter.Dispose() ' End Try 'End Function Public Function Select_Hierarchy_Profil(ByVal Profilnr As Long, ByVal nrpar00 As Long, ByVal partnerlist As Integer, ByVal vollstaendig As Integer, ByVal PartnerEingegeben As Boolean, ByVal hosttag As Integer) As DataTable Globals.PerfMon.insert_entry("'------ Start Select Hierarchy_Profil") Dim scmCmdToExecute As SqlCommand = New SqlCommand() scmCmdToExecute.CommandText = "dbo.[sp_trefferliste_getdata_new]" scmCmdToExecute.CommandType = CommandType.StoredProcedure Dim dtToReturn As DataTable = New DataTable() Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) ' // Use base class' connection object scmCmdToExecute.Connection = m_scoMainConnection Try scmCmdToExecute.Parameters.Add(New SqlParameter("@profilnr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Profilnr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@inrpar00", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, nrpar00)) scmCmdToExecute.Parameters.Add(New SqlParameter("@isprache", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.Sprache)) scmCmdToExecute.Parameters.Add(New SqlParameter("@imandant", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.MandantNr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@doklist", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, 0)) scmCmdToExecute.Parameters.Add(New SqlParameter("@partnerlist", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, 1)) scmCmdToExecute.Parameters.Add(New SqlParameter("@doklistdokumentartnr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, hosttag)) scmCmdToExecute.Parameters.Add(New SqlParameter("@doklistpartnernr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, 0)) scmCmdToExecute.Parameters.Add(New SqlParameter("@vollstaendig", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, vollstaendig)) If PartnerEingegeben Then scmCmdToExecute.Parameters.Add(New SqlParameter("@partnereingegeben", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, 1)) Else scmCmdToExecute.Parameters.Add(New SqlParameter("@partnereingegeben", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, 0)) End If scmCmdToExecute.Parameters.Add(New SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) scmCmdToExecute.Parameters.Add(New SqlParameter("@ihasmessage", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, 0)) scmCmdToExecute.Parameters.Add(New SqlParameter("@firstentry", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Me.FirstEntry)) scmCmdToExecute.Parameters.Add(New SqlParameter("@lastentry", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Me.LastEntry)) scmCmdToExecute.Parameters.Add(New SqlParameter("@pagedirection", SqlDbType.Int, 4, ParameterDirection.InputOutput, True, 10, 0, "", DataRowVersion.Proposed, Me.PageDirection)) If Me.SearchString <> "" Then scmCmdToExecute.Parameters.Add(New SqlParameter("@searchstring", SqlDbType.VarChar, 25, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Me.SearchString)) Else scmCmdToExecute.Parameters.Add(New SqlParameter("@searchstring", SqlDbType.VarChar, 25, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, "")) End If If Me.Geschaeftsfall <> "" Then scmCmdToExecute.Parameters.Add(New SqlParameter("@fanummer3", SqlDbType.VarChar, 128, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Me.Geschaeftsfall)) Else scmCmdToExecute.Parameters.Add(New SqlParameter("@fanummer3", SqlDbType.VarChar, 128, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, "")) End If If m_bMainConnectionIsCreatedLocal Then ' // Open connection. m_scoMainConnection.Open() Else If m_cpMainConnectionProvider.bIsTransactionPending Then scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction End If End If ' // Execute query. sdaAdapter.Fill(dtToReturn) m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) Dim hasmessage As Integer If scmCmdToExecute.Parameters.Item("@ihasmessage").Value = 1 Then If hosttag = 0 Then Globals.hasmessage = 1 Else Globals.hasmessage = 0 End If If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then MsgBox("sp_trefferliste_getdata:ErrorCode: " + m_iErrorCode.ToString) ' // Throw error. ' Throw New Exception("Stored Procedure 'pr_sysadminfunktion_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) End If If Me.SelectPartner Then Try Me.FirstEntry = dtToReturn.Rows(0).Item("person_nrpar00") Me.LastEntry = dtToReturn.Rows(dtToReturn.Rows.Count - 1).Item("person_nrpar00") Me.PageDirection = scmCmdToExecute.Parameters.Item("@PageDirection").Value Catch Me.FirstEntry = 0 Me.LastEntry = 0 End Try End If Return dtToReturn Catch ex As Exception Try 'MyMsg.show_standardmessage(22, MsgBoxStyle.Information) MsgBox(ex.Message) Catch End Try Finally If m_bMainConnectionIsCreatedLocal Then ' // Close connection. m_scoMainConnection.Close() End If scmCmdToExecute.Dispose() sdaAdapter.Dispose() Globals.PerfMon.insert_entry("'------ Ende Select Hierarchy_Profil") End Try End Function #End Region #Region "LoadTreeMenu" Public Sub LoadTreeMenu(ByVal otv As TreeView, ByVal Root As Integer) Dim menueintraege As New clsMyDokumentart() Dim menudata As DataTable Dim i As Integer Dim m_collDeletedNodes As Collection Dim collNodeKeys As New Collection() Dim tnNew As TreeNode Dim tnParent As TreeNode m_collDeletedNodes = Nothing m_collDeletedNodes = New Collection() otv.Nodes.Clear() menueintraege.cpMainConnectionProvider = conn If Root = 0 Then menudata = menueintraege.SelectHierarchy Else menudata = menueintraege.SelectHierarchy_By_Root(Root) End If For i = 0 To menudata.Rows.Count - 1 If menudata.Rows(i).Item("ParentID") = 0 Then tnNew = otv.Nodes.Add(menudata.Rows(i).Item("bezeichnung")) With tnNew .Tag() = menudata.Rows(i).Item("dokumentartnr") .ImageIndex() = menudata.Rows(i).Item("ImageIndex") .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") End With Try collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String)) Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical) End Try Else Try tnParent = CType(collNodeKeys.Item(CType(menudata.Rows(i).Item("ParentID"), String)), TreeNode) tnNew = tnParent.Nodes.Add(CType(menudata.Rows(i).Item("bezeichnung"), String)) With tnNew .Tag() = CType(menudata.Rows(i).Item("dokumentartnr"), String) .ImageIndex() = menudata.Rows(i).Item("ImageIndex") .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") End With collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String)) Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical) End Try End If Next End Sub Public Sub LoadHostTree(ByVal otv As TreeView, ByVal nrpar00 As String) Dim menueintraege As New clsMyDokumentart() Dim menudata As DataTable Dim i As Integer Dim m_collDeletedNodes As Collection Dim collNodeKeys As New Collection() Dim tnNew As TreeNode Dim tnParent As TreeNode m_collDeletedNodes = Nothing m_collDeletedNodes = New Collection() otv.Nodes.Clear() menueintraege.cpMainConnectionProvider = conn menudata = menueintraege.SelectHierarchy_by_Partner(nrpar00) For i = 0 To menudata.Rows.Count - 1 If menudata.Rows(i).Item("ParentID") = 0 Then tnNew = otv.Nodes.Add(menudata.Rows(i).Item("bezeichnung")) With tnNew .Tag() = menudata.Rows(i).Item("dokumentartnr") .ImageIndex() = menudata.Rows(i).Item("ImageIndex") .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") End With Try collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String)) Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical) End Try Else Try tnParent = CType(collNodeKeys.Item(CType(menudata.Rows(i).Item("ParentID"), String)), TreeNode) tnNew = tnParent.Nodes.Add(CType(menudata.Rows(i).Item("bezeichnung"), String)) With tnNew .Tag() = CType(menudata.Rows(i).Item("dokumentartnr"), String) .ImageIndex() = menudata.Rows(i).Item("ImageIndex") .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") End With collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String)) Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical) End Try End If Next End Sub Function read_to_root(ByVal drv As DataRowView, ByVal dt As DataTable) Dim parent As String parent = drv.Item(4) While parent <> "DA_0" Dim dview As New DataView(Globals.Vorlagendata, "dokumentartnr= '" + Trim(parent) + "'", "Parentid, sort", DataViewRowState.CurrentRows) Dim drv1 As DataRowView For Each drv1 In dview Dim dview1 As New DataView(dt, "dokumentartnr='" + Trim(drv1.Item(0)) + "'", "", DataViewRowState.CurrentRows) Dim drv2 As DataRowView Dim i As Integer i = 0 For Each drv2 In dview1 i = i + 1 Next dview1.Dispose() If i = 0 Then dt.ImportRow(drv1.Row) parent = drv1.Item(4) dview.Dispose() Next End While End Function Function read_to_root_edex(ByVal drv As DataRowView, ByVal dt As DataTable) Dim parent As String parent = drv.Item(4) While parent <> "DA_0" Dim dview As New DataView(Globals.Vorlagendata_Vollstaendig, "dokumentartnr= '" + Trim(parent) + "'", "Parentid, sort", DataViewRowState.CurrentRows) Dim drv1 As DataRowView For Each drv1 In dview Dim dview1 As New DataView(dt, "dokumentartnr='" + Trim(drv1.Item(0)) + "'", "", DataViewRowState.CurrentRows) Dim drv2 As DataRowView Dim i As Integer i = 0 For Each drv2 In dview1 i = i + 1 Next dview1.Dispose() If i = 0 Then dt.ImportRow(drv1.Row) parent = drv1.Item(4) dview.Dispose() Next End While End Function Public Sub Load_Neue_Dokumente(ByVal otv As TreeView, ByVal searchstring As String, ByVal Favoriten As Boolean, ByVal filter As Integer) Dim menueintraege As New clsMyDokumentart() Dim menudata As DataTable Dim i As Integer Dim m_collDeletedNodes As Collection Dim collNodeKeys As New Collection() Dim tnNew As TreeNode Dim tnParent As TreeNode Dim lastid As String Dim pid As String lastid = 1 m_collDeletedNodes = Nothing m_collDeletedNodes = New Collection() otv.Nodes.Clear() If Globals.Vorlagendata.Rows.Count = 0 Or Me.Refresh = True Or filter <> 0 Then menueintraege.cpMainConnectionProvider = conn menudata = menueintraege.SelectNeueDokumente(searchstring, Favoriten, filter) If filter = 0 Then Globals.Vorlagendata = menudata Else If searchstring = "" Then menudata = Globals.Vorlagendata Else Dim splitter Dim sstring As String = "" If InStr(searchstring, " ", CompareMethod.Text) > 0 Then splitter = Microsoft.VisualBasic.Split(searchstring, " ") Try i = 0 While i < 100 If sstring.Length > 0 Then sstring = sstring + " AND " sstring = sstring + "dt_bezeichnung like '%" + splitter(i) + "%'" i = i + 1 End While Catch sstring = Left(sstring, sstring.Length - 5) End Try Else sstring = "dt_bezeichnung like '%" + searchstring + "%'" End If ' searchstring = searchstring.Replace(" ", "%") ' Dim dview As New DataView(Globals.Vorlagendata, "dt_bezeichnung like '%" + searchstring + "%'", "Parentid, sort", DataViewRowState.CurrentRows) 'Dim dview As New DataView(Globals.Vorlagendata, sstring, "Parentid, sort", DataViewRowState.CurrentRows) Dim dview As New DataView(Globals.Vorlagendata, sstring, "sort,dt_bezeichnung", DataViewRowState.CurrentRows) Dim tbltemp As New DataTable() Dim tbltemp1 As New DataTable() tbltemp = dview.Table.Clone Dim drv As DataRowView For Each drv In dview tbltemp.ImportRow(drv.Row) Try read_to_root(drv, tbltemp) Catch ex As Exception MsgBox(ex.Message) End Try Next 'Globals.Vorlagendata.Select() dview.Dispose() tbltemp1 = dview.Table.Clone Try 'Dim dview2 As New DataView(tbltemp, "", "ParentID, Sort", DataViewRowState.CurrentRows) Dim dview2 As New DataView(tbltemp, "", "Sort, dt_bezeichnung", DataViewRowState.CurrentRows) Dim drv2 As DataRowView For Each drv2 In dview2 tbltemp1.ImportRow(drv2.Row) Next menudata = tbltemp1 Catch ex As Exception End Try ' menueintraege.cpMainConnectionProvider = conn ' menudata = menueintraege.SelectNeueDokumente(searchstring, Favoriten, filter) End If End If For i = 0 To menudata.Rows.Count - 1 If menudata.Rows(i).Item("ParentID") = "DA_0" Then tnNew = otv.Nodes.Add(menudata.Rows(i).Item("bezeichnung")) With tnNew .Tag() = menudata.Rows(i).Item("dokumentartnr") .ImageIndex() = menudata.Rows(i).Item("ImageIndex") .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") End With Try collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String)) Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical) End Try Else Try If menudata.Rows(i).Item("dt_bezeichnung") Is System.DBNull.Value Then tnParent = CType(collNodeKeys.Item(CType(menudata.Rows(i).Item("ParentID"), String)), TreeNode) tnNew = tnParent.Nodes.Add(CType(menudata.Rows(i).Item("bezeichnung"), String)) With tnNew .Tag() = CType(menudata.Rows(i).Item("dokumentartnr"), String) .ImageIndex() = menudata.Rows(i).Item("ImageIndex") .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") End With collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String)) Else If lastid <> menudata.Rows(i).Item("dokumentartnr") Then tnParent = CType(collNodeKeys.Item(CType(menudata.Rows(i).Item("ParentID"), String)), TreeNode) tnNew = tnParent.Nodes.Add(CType(menudata.Rows(i).Item("bezeichnung"), String)) With tnNew .Tag() = CType(menudata.Rows(i).Item("dokumentartnr"), String) .ImageIndex() = menudata.Rows(i).Item("ImageIndex") .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") End With collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String)) lastid = menudata.Rows(i).Item("dokumentartnr") pid = lastid End If tnParent = CType(collNodeKeys.Item(CType(pid, String)), TreeNode) tnNew = tnParent.Nodes.Add(CType(menudata.Rows(i).Item("dt_bezeichnung"), String)) With tnNew .Tag() = CType(menudata.Rows(i).Item("dokumenttypnr"), String) .ImageIndex() = menudata.Rows(i).Item("dokimage") .SelectedImageIndex() = menudata.Rows(i).Item("dokimage") End With collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumenttypnr"), String)) End If Catch ex As Exception MsgBox("Dokart:" & menudata.Rows(i).Item("dokumentartnr") & " - " & menudata.Rows(i).Item("dokumenttypnr") & ex.Message, MsgBoxStyle.Critical) End Try End If Next End Sub Public Sub LoadTreeMenu_KD(ByVal otv As TreeView, ByVal nrpar00 As Long) Dim menueintraege As New clsMyDokumentart() Dim menudata As DataTable Dim i As Integer Dim m_collDeletedNodes As Collection Dim collNodeKeys As New Collection() Dim tnNew As TreeNode Dim tnParent As TreeNode m_collDeletedNodes = Nothing m_collDeletedNodes = New Collection() otv.Nodes.Clear() menueintraege.cpMainConnectionProvider = conn menudata = menueintraege.SelectHierarchy_KD(nrpar00) For i = 0 To menudata.Rows.Count - 1 If menudata.Rows(i).Item("ParentID") = 0 Then tnNew = otv.Nodes.Add(menudata.Rows(i).Item("bezeichnung")) With tnNew .Tag() = menudata.Rows(i).Item("dokumentartnr") .ImageIndex() = menudata.Rows(i).Item("ImageIndex") .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") End With Try collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String)) Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical) End Try Else Try tnParent = CType(collNodeKeys.Item(CType(menudata.Rows(i).Item("ParentID"), String)), TreeNode) tnNew = tnParent.Nodes.Add(CType(menudata.Rows(i).Item("bezeichnung"), String)) With tnNew .Tag() = CType(menudata.Rows(i).Item("dokumentartnr"), String) .ImageIndex() = menudata.Rows(i).Item("ImageIndex") .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") End With collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String)) Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical) End Try End If Next End Sub 'Public Sub Load_FavoritenStruktur(ByVal otv As TreeView, ByVal searchstring As String, ByVal Favoriten As Boolean, Optional ByVal IconOffset As Integer = 0) ' Dim menueintraege As New clsMyDokumentart() ' Dim menudata As DataTable ' Dim i As Integer ' Dim m_collDeletedNodes As Collection ' Dim collNodeKeys As New Collection() ' Dim tnNew As TreeNode ' Dim tnParent As TreeNode ' Dim lastid As Long ' Dim pid As Long ' lastid = 0 ' m_collDeletedNodes = Nothing ' m_collDeletedNodes = New Collection() ' otv.Nodes.Clear() ' menueintraege.cpMainConnectionProvider = conn ' menudata = menueintraege.SelectHierarchy_Favoriten ' For i = 0 To menudata.Rows.Count - 1 ' If menudata.Rows(i).Item("ParentID") = 0 Then ' tnNew = otv.Nodes.Add(menudata.Rows(i).Item("bezeichnung")) ' With tnNew ' .Tag() = menudata.Rows(i).Item("dokumentartnr") ' .ImageIndex() = menudata.Rows(i).Item("ImageIndex") ' .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") ' End With ' Try ' collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String)) ' Catch ex As Exception ' MsgBox(ex.Message, MsgBoxStyle.Critical) ' End Try ' Else ' Try ' tnParent = CType(collNodeKeys.Item(CType(menudata.Rows(i).Item("ParentID"), String)), TreeNode) ' tnNew = tnParent.Nodes.Add(CType(menudata.Rows(i).Item("bezeichnung"), String)) ' 'Wenn es sich nicht um das Icon 1 = Folder handelt wird der Offset der Icon dazugezählt ' 'Offset ist >0 wenn in einer Imagelist bereits Icon enthält, bevor die Dokstruktur geladen ist ' With tnNew ' .Tag() = CType(menudata.Rows(i).Item("dokumentartnr"), String) ' If menudata.Rows(i).Item("ImageIndex") > 1 Then ' 'Dokument ' .ImageIndex() = menudata.Rows(i).Item("ImageIndex") + IconOffset ' .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") + IconOffset ' collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String) & "_" & tnNew.Parent.Tag) ' Else ' 'Ordner ' .ImageIndex() = menudata.Rows(i).Item("ImageIndex") ' .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") ' collNodeKeys.Add(tnNew, CType(menudata.Rows(i).Item("dokumentartnr"), String)) ' End If ' End With ' Catch ex As Exception ' MsgBox(CType(menudata.Rows(i).Item("dokumentartnr"), String) + ex.Message, MsgBoxStyle.Critical) ' End Try ' End If ' Next 'End Sub Public Sub LoadTreeMenu_Profil(ByVal otv As TreeView, ByVal Profilnr As Long, ByVal nrpar00 As Long, ByVal mynode As TreeNode, ByVal partnerlist As Integer, ByVal vollstaendig As Integer, ByVal PartnerEingegeben As Boolean) Globals.PerfMon.insert_entry("'------ Start Load Struktur") ' Dim menueintraege As New clsMyDokumentart() Dim menudata As DataTable Dim i As Integer Dim m_collDeletedNodes As Collection Dim collNodeKeys As New Collection() Dim tnNew As TreeNode Dim tnParent As TreeNode Dim tn1 As TreeNode Dim hosttag As Integer If (partnerlist = 1 And nrpar00 = 0) Or PartnerEingegeben = True Then m_collDeletedNodes = Nothing m_collDeletedNodes = New Collection() otv.Nodes.Clear() End If ' menueintraege.cpMainConnectionProvider = conn Me.cpMainConnectionProvider = conn hosttag = 0 Try If otv.SelectedNode.Text = "HOST " Then hosttag = 998 Catch hosttag = 0 End Try menudata = Select_Hierarchy_Profil(Profilnr, nrpar00, partnerlist, vollstaendig, PartnerEingegeben, hosttag) Try If menudata.Rows.Count = 0 Then Exit Sub Catch Exit Sub End Try If hosttag = 998 Then tnParent = mynode If menudata.Rows.Count = 0 Then tnNew = tnParent.Nodes.Add("Keine Hostdokumente vorhanden") Exit Sub End If tnParent = otv.SelectedNode For i = 2 To menudata.Rows.Count - 1 If menudata.Rows(i).Item("parentid") = 3 Then tnParent = mynode Else tnParent = CType(collNodeKeys.Item(CType(Str(nrpar00) + "-" + Str(menudata.Rows(i).Item("parentid")), String)), TreeNode) End If tnNew = tnParent.Nodes.Add(CType(menudata.Rows(i).Item("bezeichnung"), String)) With tnNew .Tag() = CType(Str(nrpar00) + "-" + Str(menudata.Rows(i).Item("dokumentartnr")), String) .ImageIndex() = menudata.Rows(i).Item("ImageIndex") .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndex") End With collNodeKeys.Add(tnNew, CType(Str(nrpar00) + "-" + Str(menudata.Rows(i).Item("dokumentartnr")), String)) Next Exit Sub End If If (partnerlist = 1 And nrpar00 = 0) Or PartnerEingegeben = True Then 'ObjPerson Try Dim OldPerson As Integer = 0 For Each r As DataRow In menudata.Rows If 100208326 = r("Person_nrpar00") Then r("Person_nrpar00") = r("Person_nrpar00") End If If OldPerson <> r("Person_nrpar00") Then OldPerson = r("Person_nrpar00") tnNew = otv.Nodes.Add(r("Person")) tnNew.Tag = r("person_nrpar00") tnNew.ImageIndex = r("Person_imageindex") tnNew.SelectedImageIndex = r("Person_imageindexopen") If r("Person_saldiert") = True Then tnNew.BackColor = System.Drawing.Color.LightGray tnNew.ImageIndex = 66 tnNew.SelectedImageIndex = 66 End If Try collNodeKeys.Add(tnNew, CType(Str(menudata.Rows(i).Item("person_nrpar00")), String)) Catch ex As Exception End Try End If If r("nrpar00") <> r("Person_nrpar00") Then tn1 = tnNew.Nodes.Add(r("Partner")) tn1.Tag = r("nrpar00") tn1.ImageIndex = r("imageindexopen") tn1.SelectedImageIndex = r("imageindexopen") If r("saldiert") = True Then tn1.ImageIndex = 66 tn1.SelectedImageIndex = 66 tn1.BackColor = System.Drawing.Color.LightGray End If tn1.Nodes.Add("") tn1.Collapse() Try collNodeKeys.Add(tnNew, CType(Str(menudata.Rows(i).Item("nrpar00")), String)) Catch ex As Exception End Try Else If tnNew.Nodes.Count < 1 Then tn1 = tnNew.Nodes.Add("") tn1.Tag = -1 End If End If Next Exit Sub Catch ex As Exception End Try 'partnerliste aufbereiten For i = 0 To menudata.Rows.Count - 1 tnNew = otv.Nodes.Add(menudata.Rows(i).Item("partner")) With tnNew .Tag = CType(Str(menudata.Rows(i).Item("nrpar00")), String) .ImageIndex = menudata.Rows(i).Item("imageindex") .SelectedImageIndex = menudata.Rows(i).Item("imageindexopen") Try If menudata.Rows(i).Item("saldiert") = True Then 'tnNew.BackColor = System.Drawing.Color.Yellow 'tnNew.NodeFont = New System.Drawing.Font(otv.Font.FontFamily, otv.Font.Size, FontStyle.Strikeout) ' tnNew.NodeFont = New System.Drawing.Font(otv.Font.FontFamily, otv.Font.Size, FontStyle.Italic) tnNew.BackColor = System.Drawing.Color.LightGray tnNew.ImageIndex = 66 tnNew.SelectedImageIndex = 66 'tnNew.ForeColor = System.Drawing.Color.Blue (Nicht möglich, da markierte Einträge bereits Rot sind End If Catch End Try End With Try collNodeKeys.Add(tnNew, CType(Str(menudata.Rows(i).Item("nrpar00")), String)) ' MsgBox(CType(Str(menudata.Rows(i).Item("partnernr")) + "-" + Str(menudata.Rows(i).Item("dokumentartnr")), String)) tnNew = tnNew.Nodes.Add("") ' tnNew.Tag = "Dummy" Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical) End Try Next 'partnerliste aufbereiten 'For i = 0 To menudata.Rows.Count - 1 ' tnNew = otv.Nodes.Add(menudata.Rows(i).Item("partner")) ' With tnNew ' .Tag = CType(Str(menudata.Rows(i).Item("nrpar00")), String) ' .ImageIndex = menudata.Rows(i).Item("imageindex") ' .SelectedImageIndex = menudata.Rows(i).Item("imageindexopen") ' End With ' Try ' collNodeKeys.Add(tnNew, CType(Str(menudata.Rows(i).Item("nrpar00")), String)) ' ' MsgBox(CType(Str(menudata.Rows(i).Item("partnernr")) + "-" + Str(menudata.Rows(i).Item("dokumentartnr")), String)) ' tnNew = tnNew.Nodes.Add("") ' ' tnNew.Tag = "Dummy" ' Catch ex As Exception ' MsgBox(ex.Message, MsgBoxStyle.Critical) ' End Try 'Next Else 'Dokumentstruktur aufbereiten For i = 0 To menudata.Rows.Count - 1 If menudata.Rows(i).Item("ParentID") <> 0 Then Try If menudata.Rows(i).Item("parentid") > 1 Then If menudata.Rows(i).Item("parentid") = 2 Then tnParent = mynode Else tnParent = CType(collNodeKeys.Item(CType(Str(nrpar00) + "-" + Str(menudata.Rows(i).Item("parentid")), String)), TreeNode) End If If DivFnkt.PartnerTyp(nrpar00) = EDOKA.clsDivFnkt.ENUM_Partnertyp.Person Then 'If otv.GetNodeCount(False) <> 1 Then tnNew = tnParent.Nodes.Insert(0, CType(menudata.Rows(i).Item("bezeichnung"), String)) ' tnNew = tnParent.Nodes.Insert(tnParent.GetNodeCount(True),CType(menudata.Rows(i).Item("bezeichnung"), String))) 'tnNew = tnParent.Nodes.Insert(tnParent.GetNodeCount(True), CType(menudata.Rows(i).Item("bezeichnung"), String)) 'Else 'tnNew = tnParent.Nodes.Add(CType(menudata.Rows(i).Item("bezeichnung"), String)) 'End If 'tnNew = tnParent.Nodes.Add(CType(menudata.Rows(i).Item("bezeichnung"), String)) Else tnNew = tnParent.Nodes.Add(CType(menudata.Rows(i).Item("bezeichnung"), String)) End If 'tnNew = tnParent.Nodes.Add(CType(menudata.Rows(i).Item("bezeichnung"), String)) With tnNew .Tag() = CType(Str(nrpar00) + "-" + Str(menudata.Rows(i).Item("dokumentartnr")), String) .ImageIndex() = menudata.Rows(i).Item("ImageIndex") .SelectedImageIndex() = menudata.Rows(i).Item("ImageIndexOpen") End With 'MsgBox(menudata.Rows(i).Item("bezeichnung") & "/") collNodeKeys.Add(tnNew, CType(Str(nrpar00) + "-" + Str(menudata.Rows(i).Item("dokumentartnr")), String)) 'If menudata.Rows(i).Item("dokumentartnr") = 998 Then tnNew.Nodes.Add("") End If Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical) End Try End If Next End If Globals.PerfMon.insert_entry("'------ Ende Load Struktur") End Sub #End Region End Class End Namespace