Imports System.Data.SqlClient Imports System.Data.SqlDbType Imports System.IO Public Class clsdb Dim m_connectionstring As String Property Connectionstring As String Get Return m_connectionstring End Get Set(value As String) m_connectionstring = value End Set End Property Public dsdaten As New DataSet Public dadaten As SqlDataAdapter Dim sql As String Sub New() Dim ConnectionFilename As String = "edokaconn.cfg" Dim path As String = "" Dim fc As Integer = 0 Dim ofile As System.IO.File Dim oread As System.IO.StreamReader Dim sConnectionstring As String oread = ofile.OpenText(ApplicationPath() + "\" + ConnectionFilename) sConnectionstring = oread.ReadLine sConnectionstring = Crypto.DecryptText(sConnectionstring, "HutterundMueller") sConnectionstring = Left(sConnectionstring, Len(sConnectionstring) - 1) sConnectionstring = sConnectionstring oread.Close() Me.Connectionstring = sConnectionstring End Sub Public Function Get_Partnerlist(ByRef List As Windows.Forms.ListBox, ByRef ListboxBPNr As Windows.Forms.ListBox, ByVal sort As Integer) dsdaten.Tables.Clear() Exec_sp_(1, sort, My.Settings.Dokumenttypnr) List.Items.Clear() ListboxBPNr.Items.Clear() For Each r As DataRow In dsdaten.Tables(0).Rows Try List.Items.Add(r.Item(0)) ListboxBPNr.Items.Add(r.Item("nrpar00")) Catch ex As Exception End Try Next End Function Public Function Get_Struktur(ByRef Tree As Windows.Forms.TreeView, ByVal nrpar00 As String) dsdaten.Tables.Clear() Exec_sp_(2, nrpar00, My.Settings.Dokumenttypnr) Dim year As Integer = 0 Tree.Nodes.Clear() Dim t As Windows.Forms.TreeNode For Each r As DataRow In dsdaten.Tables(0).Rows If r("year") <> year Then t = New Windows.Forms.TreeNode t.Text = r("year") t.Tag = r("year") Tree.Nodes.Add(t) Dim tn As New Windows.Forms.TreeNode tn.Text = r("month") tn.Tag = r("year").ToString + "/" + r("month").ToString t.Nodes.Add(tn) year = r("year") Else Dim tn As New Windows.Forms.TreeNode tn.Text = r("month") tn.Tag = r("year").ToString + "/" + r("month").ToString t.Nodes.Add(tn) year = r("year") End If Next Tree.ExpandAll() Try Tree.SelectedNode = Tree.Nodes(0) Catch ex As Exception End Try End Function Public Sub Get_Dokumente(ByRef c1daten As C1.Win.C1TrueDBGrid.C1TrueDBGrid, ByVal nrpar00 As String, ByVal selektion As String) dsdaten.Tables.Clear() Exec_sp_(3, nrpar00, selektion, My.Settings.Dokumenttypnr) c1daten.DataSource = Nothing c1daten.DataSource = dsdaten.Tables(0) c1daten.DataMember = dsdaten.Tables(0).TableName For Each c As DataColumn In dsdaten.Tables(0).Columns c1daten.Splits(0).DisplayColumns(c.ColumnName).AutoSize() Next c1daten.AllowAddNew = False c1daten.AllowUpdate = False c1daten.AllowDelete = False End Sub Public Function Exec_sp_(fnkt As Integer, Optional param1 As String = "", Optional param2 As String = "", Optional param3 As String = "", Optional param4 As String = "", Optional param5 As String = "", Optional param6 As String = "", Optional param7 As String = "", Optional param8 As String = "", Optional param9 As String = "") As String Dim scmCmdToExecute As SqlCommand = New SqlCommand() Dim conn As New SqlConnection(Connectionstring) scmCmdToExecute.CommandText = "dbo.sp_Boersenabrechnung" scmCmdToExecute.CommandType = CommandType.StoredProcedure Dim dtToReturn As DataTable = New DataTable() Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) scmCmdToExecute.Connection = conn Try scmCmdToExecute.Parameters.Add(New SqlParameter("@fnkt", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, fnkt)) scmCmdToExecute.Parameters.Add(New SqlParameter("@param1", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, param1)) scmCmdToExecute.Parameters.Add(New SqlParameter("@param2", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, param2)) scmCmdToExecute.Parameters.Add(New SqlParameter("@param3", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, param3)) scmCmdToExecute.Parameters.Add(New SqlParameter("@param4", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, param4)) scmCmdToExecute.Parameters.Add(New SqlParameter("@param5", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, param5)) scmCmdToExecute.Parameters.Add(New SqlParameter("@param6", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, param6)) scmCmdToExecute.Parameters.Add(New SqlParameter("@param7", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, param7)) scmCmdToExecute.Parameters.Add(New SqlParameter("@param8", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, param8)) scmCmdToExecute.Parameters.Add(New SqlParameter("@param9", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, param9)) scmCmdToExecute.Parameters.Add(New SqlParameter("@Retvalue", SqlDbType.VarChar, 255, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, "")) conn.Open() Select Case fnkt Case 1, 2, 3,4 sdaAdapter.Fill(dsdaten, "Jobstatus") Return "" End Select Catch ex As Exception MsgBox("Insert_job::" & scmCmdToExecute.CommandText + "::" + ex.Message) Return "" Finally conn.Close() scmCmdToExecute.Dispose() sdaAdapter.Dispose() dtToReturn.Dispose() End Try End Function Public Function get_colddokumentid(ByVal dokumentid As String, ByVal fnkt As Integer) As String Dim scmCmdToExecute As SqlCommand = New SqlCommand() Dim conn As New SqlConnection(Connectionstring) scmCmdToExecute.CommandText = "dbo.sp_get_colddokumentid" scmCmdToExecute.CommandType = CommandType.StoredProcedure Dim dtToReturn As DataTable = New DataTable() Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) scmCmdToExecute.Connection = conn Try scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, dokumentid)) scmCmdToExecute.Parameters.Add(New SqlParameter("@fnkt", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, fnkt)) scmCmdToExecute.Parameters.Add(New SqlParameter("@colddokumentid", SqlDbType.VarChar, 255, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, "")) scmCmdToExecute.Parameters.Add(New SqlParameter("@coldpartnernr", SqlDbType.VarChar, 255, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, "")) sdaAdapter.Fill(dtToReturn) get_colddokumentid = scmCmdToExecute.Parameters("@colddokumentid").Value Catch ex As Exception MsgBox("Status Dokumentbearbeitung::" & scmCmdToExecute.CommandText + "::" + ex.Message) Finally scmCmdToExecute.Dispose() sdaAdapter.Dispose() dtToReturn.Dispose() End Try End Function Public Function Get_From_DB(ByVal sDokumentID As String, ByVal sDokumentName As String, Optional ByRef DokType As String = "") As Boolean Dim dokumentid As String Dim dokumentname As String dokumentid = sDokumentID dokumentname = sDokumentName Dim connection As New SqlConnection() Dim da As New SqlDataAdapter("Select * From doks where DokumentID='" + dokumentid + "'", connection) Dim CB As SqlCommandBuilder = New SqlCommandBuilder(da) Dim ds As New DataSet() Try 'Connectionstring zur Datenbank connection.ConnectionString = Me.Connectionstring connection.Open() da.Fill(ds, "docs") 'Versuchen, ob es sich um ein EDKIMP-Dokument handelt - Rel. 3.73 SHU Dim myRow As DataRow myRow = ds.Tables(0).Rows(0) Dim MyData() As Byte MyData = myRow.Item(1) 'If myRow.Item(2).ToString = "" Then DokType = ".doc" Else DokType = myRow.Item(2) Dim K As Long K = UBound(MyData) Dim fs As New FileStream(sDokumentName, FileMode.OpenOrCreate, FileAccess.Write) fs.Write(MyData, 0, K) fs.Close() fs = Nothing Catch ex As Exception Return False End Try CB = Nothing ds = Nothing da = Nothing connection.Close() connection = Nothing Return True End Function Public Function Journal_Dokumentzugriff(ByVal dokumentid As String, ByVal zugriffsart As String, ByVal host As Integer, ByVal partnernr As Integer, ByVal partner_kurzbezeichnung As String, ByVal dokumenttyp As String) Dim scmCmdToExecute As SqlCommand = New SqlCommand() Dim i As Integer Dim connopen As Boolean = False scmCmdToExecute.CommandText = "dbo.sp_journal_dokzugriffe" scmCmdToExecute.CommandType = CommandType.StoredProcedure Dim conn As New SqlConnection(Connectionstring) scmCmdToExecute.Connection = conn Try If host = 0 Then scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 22, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, dokumentid)) scmCmdToExecute.Parameters.Add(New SqlParameter("@mitarbeiternr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.Mitarbeiternr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@zugriffsart", SqlDbType.VarChar, 25, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, zugriffsart)) scmCmdToExecute.Parameters.Add(New SqlParameter("@host", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, 0)) scmCmdToExecute.Parameters.Add(New SqlParameter("@partnernr", SqlDbType.VarChar, 10, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, "")) scmCmdToExecute.Parameters.Add(New SqlParameter("@partnerkbez", SqlDbType.VarChar, 35, ParameterDirection.Input, True, 35, 0, "", DataRowVersion.Proposed, "")) scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumenttyp", SqlDbType.VarChar, 128, ParameterDirection.Input, True, 35, 0, "", DataRowVersion.Proposed, "")) Else scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 22, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, dokumentid)) scmCmdToExecute.Parameters.Add(New SqlParameter("@mitarbeiternr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.Mitarbeiternr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@zugriffsart", SqlDbType.VarChar, 25, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, zugriffsart)) scmCmdToExecute.Parameters.Add(New SqlParameter("@host", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, 1)) scmCmdToExecute.Parameters.Add(New SqlParameter("@partnernr", SqlDbType.VarChar, 10, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, partnernr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@partnerkbez", SqlDbType.VarChar, 35, ParameterDirection.Input, True, 35, 0, "", DataRowVersion.Proposed, partner_kurzbezeichnung)) scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumenttyp", SqlDbType.VarChar, 128, ParameterDirection.Input, True, 35, 0, "", DataRowVersion.Proposed, dokumenttyp)) End If Try scmCmdToExecute.Connection.Open() connopen = True Catch End Try scmCmdToExecute.ExecuteNonQuery() If connopen Then Try scmCmdToExecute.Connection.Close() Catch End Try End If Catch ex As Exception Finally scmCmdToExecute.Dispose() End Try End Function End Class