You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

143 lines
6.6 KiB

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 Check_Partner_Exists(ByVal Partnernr As Integer)
dsdaten.Clear()
sql = "Select nrpar00 from partner where nrpar00=" + Partnernr.ToString
dadaten = New SqlDataAdapter(sql, Connectionstring)
dadaten.Fill(dsdaten, "Partner")
If dsdaten.Tables(0).Rows.Count < 1 Then Return False Else Return True
End Function
Public Function Insert_Job(userid As String, jahr As Integer) As String
Return Exec_sp_edoka_dok_retrival(1, userid, jahr)
End Function
Public Function Insert_Partner(jobnr As String, partnernr As String)
Exec_sp_edoka_dok_retrival(2, jobnr, partnernr)
End Function
Public Function Insert_Parameter(jobnr As String, parametertyp As String, dokumenttyp As String, zeitraum As String)
Exec_sp_edoka_dok_retrival(3, jobnr, parametertyp, dokumenttyp, zeitraum)
End Function
Public Function Get_Jobstatus(userid As String)
Exec_sp_edoka_dok_retrival(10, userid)
End Function
Public Function Update_Jobstatus(ByVal Jobnr As String, Status As String)
Exec_sp_edoka_dok_retrival(4, Jobnr, Status)
End Function
Public Function DokZugriff_Journal(ByVal Jobnr As String)
Exec_sp_edoka_dok_retrival(13, Jobnr)
End Function
Public Function Exec_sp_edoka_dok_retrival(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_EDOKA_Dok_Retrival"
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()
If fnkt < 10 Then
scmCmdToExecute.ExecuteNonQuery()
Return scmCmdToExecute.Parameters("@Retvalue").Value.ToString
Else
sdaAdapter.Fill(dsdaten, "Jobstatus")
Return ""
End If
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_file(ByVal sql As String, filename As String, DBAttribut As String) As String
Dim connection As New SqlConnection()
Dim DA As New SqlDataAdapter(sql, connection)
Dim CB As SqlCommandBuilder = New SqlCommandBuilder(DA)
Dim ds As New DataSet()
Try
connection.ConnectionString = Connectionstring
connection.Open()
DA.Fill(ds, "zipfile")
Dim myRow As DataRow
myRow = ds.Tables(0).Rows(0)
Dim MyData() As Byte
MyData = myRow.Item(DBAttribut)
Dim K As Long
K = UBound(MyData)
Dim fs As New FileStream(filename, FileMode.OpenOrCreate, FileAccess.Write)
fs.Write(MyData, 0, K)
fs.Close()
fs = Nothing
Return filename
Catch ex As Exception
Return ""
Finally
CB = Nothing
ds = Nothing
DA = Nothing
connection.Close()
connection = Nothing
End Try
End Function
End Class