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.

285 lines
16 KiB

Imports System.IO.File
Imports System.Data.SqlClient
Imports System.Data.SqlTypes
Imports System.ComponentModel
Imports System.SystemException
Module Datenzugriffe
Public Function Generic_Select(ByVal typ As Integer) As DataTable
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
Select Case typ
Case 1
scmCmdToExecute.CommandText = "dbo.SP_Archiv_Eingangsarchivierte_Dokumente"
Case 2
scmCmdToExecute.CommandText = "dbo.sp_archiv_bereit_zur_ausgangsarchivierung"
Case 3
scmCmdToExecute.CommandText = "dbo.sp_archiv_get_coldindex"
Case 4
scmCmdToExecute.CommandText = "dbo.sp_archiv_get_doctype"
Case 5
scmCmdToExecute.CommandText = "dbo.sp_archiv_MehrfachScan"
Case 6
scmCmdToExecute.CommandText = "dbo.sp_archiv_MehrfachScan_Done"
Case 7
scmCmdToExecute.CommandText = "dbo.sp_archiv_get_coldupdate"
Case 8
scmCmdToExecute.CommandText = "dbo.sp_archiv_coldupdate_done"
Case 9
scmCmdToExecute.CommandText = "dbo.sp_archiv_dokumente_ersetzen"
Case 10
scmCmdToExecute.CommandText = "dbo.sp_update_archivierung"
Case 11
scmCmdToExecute.CommandText = "dbo.sp_archiv_MehrfachScan"
Case 12
scmCmdToExecute.CommandText = "dbo.sp_archiv_MehrfachScan_Done"
Case 13
scmCmdToExecute.CommandText = "dbo.sp_archiv_Get_Prozess"
Case 14
scmCmdToExecute.CommandText = "dbo.sp_archiv_Get_Archivdatum"
Case 15
scmCmdToExecute.CommandText = "dbo.sp_archiv_bereit_zur_ausgangsarchivierung"
Case Else
End Select
'BUD - 2006.10.31 - Timeout verlängern auf 100 Sekunden
Select Case typ
Case 1, 2, 5, 7, 11, 15
scmCmdToExecute.CommandTimeout = 100
End Select
scmCmdToExecute.CommandType = CommandType.StoredProcedure
Dim dtToReturn As DataTable = New DataTable
Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute)
Select Case typ
Case 3
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 22, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.DokumentID))
scmCmdToExecute.Parameters.Add(New SqlParameter("@indextyp", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.Indextyp))
Case 4
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 22, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.DokumentID))
Case 5
scmCmdToExecute.Parameters.Add(New SqlParameter("@typ", SqlDbType.VarChar, 22, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, 1))
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 22, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.DokumentID))
Case 6
scmCmdToExecute.Parameters.Add(New SqlParameter("@typ", SqlDbType.VarChar, 22, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, 1))
scmCmdToExecute.Parameters.Add(New SqlParameter("@nreintrag", SqlDbType.VarChar, 22, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.KeyNr))
Case 8
scmCmdToExecute.Parameters.Add(New SqlParameter("@nreintrag", SqlDbType.VarChar, 22, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.KeyNr))
Case 9
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 22, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.DokumentID))
Case 11
scmCmdToExecute.Parameters.Add(New SqlParameter("@typ", SqlDbType.VarChar, 22, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, 2))
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 22, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, ""))
Case 12
scmCmdToExecute.Parameters.Add(New SqlParameter("@typ", SqlDbType.VarChar, 22, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, 2))
scmCmdToExecute.Parameters.Add(New SqlParameter("@nreintrag", SqlDbType.VarChar, 22, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.KeyNr))
Case 13
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 22, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.DokumentID))
Case 14
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 22, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.DokumentID))
Case 15
scmCmdToExecute.Parameters.Add(New SqlParameter("@Typ", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, 1))
Case Else
End Select
If typ <> 10 Then
scmCmdToExecute.Connection = conn_edoka.scoDBConnection
Else
scmCmdToExecute.Connection = conn_ams.scoDBConnection
End If
Try
sdaAdapter.Fill(dtToReturn)
Return dtToReturn
Catch ex As Exception
' // some error occured. Bubble it to caller and encapsulate Exception object
Throw New Exception("Dokumenterstellung::Generic_Select::" & scmCmdToExecute.CommandText + "::Typ:" + typ.ToString + "::Error occured." & ex.Message, ex)
Finally
scmCmdToExecute.Dispose()
sdaAdapter.Dispose()
End Try
End Function
Public Function Update_DokumentColdIndexwert(ByVal dokumentid As String, ByVal Indextyp As Integer, ByVal indexfeld As Integer, ByVal wert As String) As DataTable
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
scmCmdToExecute.CommandText = "dbo.SP_Archiv_Update_DokumentColdIndexwert"
scmCmdToExecute.CommandType = CommandType.StoredProcedure
Dim dtToReturn As DataTable = New DataTable()
conn_edoka.OpenConnection()
Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute)
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.DokumentID))
scmCmdToExecute.Parameters.Add(New SqlParameter("@indextyp", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Indextyp))
scmCmdToExecute.Parameters.Add(New SqlParameter("@indexfeld", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, indexfeld))
scmCmdToExecute.Parameters.Add(New SqlParameter("@wert", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, wert))
scmCmdToExecute.Connection = conn_edoka.scoDBConnection
Try
sdaAdapter.Fill(dtToReturn)
Return dtToReturn
Catch ex As Exception
' // some error occured. Bubble it to caller and encapsulate Exception object
Throw New Exception("Dokumenterstellung::Generic_Select::" & scmCmdToExecute.CommandText & "::Error occured." & ex.Message, ex)
Finally
scmCmdToExecute.Dispose()
sdaAdapter.Dispose()
conn_edoka.CloseConnection(True)
End Try
End Function
Public Function Insert_ColdUpdate(ByVal dokumentid As String, ByVal colddokumentid As String, ByVal indextyp As Integer, ByVal feldnr As Integer, ByVal wert As String) As DataTable
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
scmCmdToExecute.CommandText = "dbo.SP_Archiv_insert_coldupdate"
scmCmdToExecute.CommandType = CommandType.StoredProcedure
Dim dtToReturn As DataTable = New DataTable()
conn_edoka.OpenConnection()
Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute)
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 22, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, dokumentid))
scmCmdToExecute.Parameters.Add(New SqlParameter("@colddokumentid", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, colddokumentid))
scmCmdToExecute.Parameters.Add(New SqlParameter("@indextyp", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, indextyp))
scmCmdToExecute.Parameters.Add(New SqlParameter("@feldnr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, feldnr))
scmCmdToExecute.Parameters.Add(New SqlParameter("@neuerwert", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, wert))
scmCmdToExecute.Connection = conn_edoka.scoDBConnection
Try
sdaAdapter.Fill(dtToReturn)
Return dtToReturn
Catch ex As Exception
Threading.Thread.Sleep(1000)
' MsgBox(ex.Message)
'Throw New Exception("Dokumenterstellung::Generic_Select::" & scmCmdToExecute.CommandText & "::Error occured." & ex.Message, ex)
Return Nothing
Finally
scmCmdToExecute.Dispose()
sdaAdapter.Dispose()
conn_edoka.CloseConnection(True)
End Try
End Function
'Public Function Sendmail(ByVal email As String, ByVal betreff As String, ByVal meldung As String) As Boolean
' Dim scmCmdToExecute As SqlCommand = New SqlCommand()
' scmCmdToExecute.CommandText = "dbo.SP_SendMail"
' scmCmdToExecute.CommandType = CommandType.StoredProcedure
' Dim dtToReturn As DataTable = New DataTable()
' scmCmdToExecute.Parameters.Add(New SqlParameter("@email", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, email))
' scmCmdToExecute.Parameters.Add(New SqlParameter("@betreff", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, betreff))
' scmCmdToExecute.Parameters.Add(New SqlParameter("@meldung", SqlDbType.VarChar, 1024, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, meldung))
' scmCmdToExecute.Connection = conn_edoka.scoDBConnection
' Try
' conn_edoka.OpenConnection()
' Catch
' End Try
' Sendmail = True
' Try
' scmCmdToExecute.ExecuteNonQuery()
' Catch ex As Exception
' Sendmail = False
' Finally
' scmCmdToExecute.Dispose()
' conn_edoka.CloseConnection(True)
' End Try
'End Function
Public Function AMS_New_DBKey(ByVal Keytype As Integer) As Integer
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
scmCmdToExecute.CommandText = "SP_New_DBKey"
scmCmdToExecute.CommandType = CommandType.StoredProcedure
conn_ams.OpenConnection()
scmCmdToExecute.Parameters.Add(New SqlParameter("@xKeyType", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, keytype))
scmCmdToExecute.Parameters.Add(New SqlParameter("@NewKey", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, 0))
scmCmdToExecute.Connection = conn_ams.scoDBConnection
Try
scmCmdToExecute.ExecuteNonQuery()
AMS_New_DBKey = scmCmdToExecute.Parameters("@NewKey").Value
Catch ex As Exception
' MsgBox(ex.Message)
Threading.Thread.Sleep(1000)
'Throw New Exception("Neuer Schlüssel für AMS_Cold_Update (53) konnte nicht gelöst werden")
Finally
scmCmdToExecute.Dispose()
conn_ams.CloseConnection(True)
End Try
End Function
Public Function AMS_Check_Edoka_Dokument(ByVal dokumentid As String) As Integer
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
scmCmdToExecute.CommandText = "dbo.SP_Archiv_ams_check_edoka_dokument"
scmCmdToExecute.CommandType = CommandType.StoredProcedure
Dim dtToReturn As DataTable = New DataTable()
Try
conn_edoka.OpenConnection()
Catch
End Try
Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute)
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, dokumentid))
scmCmdToExecute.Parameters.Add(New SqlParameter("@return", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, 0))
scmCmdToExecute.Connection = conn_edoka.scoDBConnection
Try
sdaAdapter.Fill(dtToReturn)
AMS_Check_Edoka_Dokument = scmCmdToExecute.Parameters("@return").Value
Catch ex As Exception
' MsgBox(ex.Message)
Threading.Thread.Sleep(1000)
'Throw New Exception("Dokumenterstellung::Generic_Select::" & scmCmdToExecute.CommandText & "::Error occured." & ex.Message, ex)
Finally
scmCmdToExecute.Dispose()
sdaAdapter.Dispose()
conn_edoka.CloseConnection(True)
End Try
End Function
Public Function bereits_eingangsarchiviert(ByVal dokumentid As String) As Boolean
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
scmCmdToExecute.CommandText = "dbo.SP_Archiv_check_eingangsarchiviert"
scmCmdToExecute.CommandType = CommandType.StoredProcedure
Dim dtToReturn As DataTable = New DataTable()
Try
conn_edoka.OpenConnection()
Catch
End Try
Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute)
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, dokumentid))
scmCmdToExecute.Parameters.Add(New SqlParameter("@eingangsarchiviert", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, 0))
scmCmdToExecute.Connection = conn_edoka.scoDBConnection
Try
sdaAdapter.Fill(dtToReturn)
If scmCmdToExecute.Parameters("@eingangsarchiviert").Value > 0 Then bereits_eingangsarchiviert = True Else bereits_eingangsarchiviert = False
Catch ex As Exception
' MsgBox(ex.Message)
Threading.Thread.Sleep(1000)
'Throw New Exception("Dokumenterstellung::Generic_Select::" & scmCmdToExecute.CommandText & "::Error occured." & ex.Message, ex)
Finally
scmCmdToExecute.Dispose()
sdaAdapter.Dispose()
conn_edoka.CloseConnection(True)
End Try
End Function
Public Function GetColdData(ByVal datum As String) As DataTable
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
scmCmdToExecute.CommandText = "dbo.sp_archiv_get_coldupdate_bydatum"
scmCmdToExecute.CommandType = CommandType.StoredProcedure
Dim dtToReturn As DataTable = New DataTable()
Try
conn_edoka.OpenConnection()
Catch
End Try
Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute)
scmCmdToExecute.Parameters.Add(New SqlParameter("@datum", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, datum))
scmCmdToExecute.Connection = conn_edoka.scoDBConnection
Try
sdaAdapter.Fill(dtToReturn)
Return dtToReturn
Catch ex As Exception
' MsgBox(ex.Message)
Threading.Thread.Sleep(1000)
' Throw New Exception("Dokumenterstellung::Generic_Select::" & scmCmdToExecute.CommandText & "::Error occured." & ex.Message, ex)
Return Nothing
Finally
scmCmdToExecute.Dispose()
sdaAdapter.Dispose()
conn_edoka.CloseConnection(True)
End Try
End Function
End Module