update nach Bedingt Retournierbar
This commit is contained in:
16
Klassen/clsOnBaseDokument.vb
Normal file
16
Klassen/clsOnBaseDokument.vb
Normal file
@@ -0,0 +1,16 @@
|
||||
Imports System.Collections.Generic
|
||||
|
||||
Public Class OnBaseDokument
|
||||
Public Property dokumentTyp As String
|
||||
Public Property dokumentDatum As String
|
||||
Public Property dateiTyp As String
|
||||
Public Property bpNummer As String
|
||||
Public Property personNummer As String
|
||||
Public Property dokumentDatei As String
|
||||
Public Property attributes As List(Of attribute)
|
||||
End Class
|
||||
|
||||
Public Class attribute
|
||||
Public Property fieldname As String
|
||||
Public Property fieldvalue As String
|
||||
End Class
|
||||
209
Klassen/clsParams.vb
Normal file
209
Klassen/clsParams.vb
Normal file
@@ -0,0 +1,209 @@
|
||||
Public Class clsParams
|
||||
Dim mConnectionstring_EDOKA As String
|
||||
Property Connectionstring_EDOKA As String
|
||||
Get
|
||||
Return mConnectionstring_EDOKA
|
||||
End Get
|
||||
Set(value As String)
|
||||
mConnectionstring_EDOKA = value
|
||||
End Set
|
||||
End Property
|
||||
Dim mConnectionstring_DokTypMapping As String
|
||||
Property Connectionstring_DokTypMapping As String
|
||||
Get
|
||||
Return mConnectionstring_DokTypMapping
|
||||
End Get
|
||||
Set(value As String)
|
||||
mConnectionstring_DokTypMapping = value
|
||||
End Set
|
||||
End Property
|
||||
Dim mconnectionstring_Journale As String
|
||||
Property Connectionstring_Journale As String
|
||||
Get
|
||||
Return mconnectionstring_Journale
|
||||
End Get
|
||||
Set(value As String)
|
||||
mconnectionstring_Journale = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Dim mEntrypPoint_IL As String
|
||||
Property EntryPoint_IL As String
|
||||
Get
|
||||
Return mEntrypPoint_IL
|
||||
End Get
|
||||
Set(value As String)
|
||||
mEntrypPoint_IL = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Dim mBCK_TimerInterval As Integer
|
||||
Property BCK_TimerInterval As Integer
|
||||
Get
|
||||
Return mBCK_TimerInterval
|
||||
End Get
|
||||
Set(value As Integer)
|
||||
mBCK_TimerInterval = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Dim mDocument_TimerInterval As Integer
|
||||
Property Document_Timerinterval As Integer
|
||||
Get
|
||||
Return mDocument_TimerInterval
|
||||
End Get
|
||||
Set(value As Integer)
|
||||
mDocument_TimerInterval = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Dim mWachDir As String
|
||||
Property WachDir As String
|
||||
Get
|
||||
Return mWachDir
|
||||
End Get
|
||||
Set(value As String)
|
||||
mWachDir = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Dim mmTempDir As String
|
||||
Property TempDir As String
|
||||
Get
|
||||
Return mmTempDir
|
||||
End Get
|
||||
Set(value As String)
|
||||
mmTempDir = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Dim mTempDirOffice As String
|
||||
Property TempDirOffice As String
|
||||
Get
|
||||
Return mTempDirOffice
|
||||
End Get
|
||||
Set(value As String)
|
||||
mTempDirOffice = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Dim mAsOffice As String
|
||||
Property AsOffice As String
|
||||
Get
|
||||
Return mAsOffice
|
||||
End Get
|
||||
Set(value As String)
|
||||
mAsOffice = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Dim mdebug As String
|
||||
Property Debug As String
|
||||
Get
|
||||
Return mdebug
|
||||
End Get
|
||||
Set(value As String)
|
||||
mdebug = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Dim msendtoonbase As String
|
||||
Property SendToOnBase As String
|
||||
Get
|
||||
Return msendtoonbase
|
||||
End Get
|
||||
Set(value As String)
|
||||
msendtoonbase = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Dim mupdateedoka As String
|
||||
Property updateedoka As String
|
||||
Get
|
||||
Return mupdateedoka
|
||||
End Get
|
||||
Set(value As String)
|
||||
mupdateedoka = value
|
||||
End Set
|
||||
End Property
|
||||
Dim mlogfilename As String
|
||||
Property LogFilename As String
|
||||
Get
|
||||
Return mlogfilename
|
||||
End Get
|
||||
Set(value As String)
|
||||
mlogfilename = value
|
||||
End Set
|
||||
End Property
|
||||
Dim mexcelcsv As String
|
||||
Property ExcelCSV As String
|
||||
Get
|
||||
Return mexcelcsv
|
||||
End Get
|
||||
Set(value As String)
|
||||
mexcelcsv = value
|
||||
End Set
|
||||
End Property
|
||||
Dim mexceldoktyp As String
|
||||
Property ExcelDokTyp As String
|
||||
Get
|
||||
Return mexceldoktyp
|
||||
End Get
|
||||
Set(value As String)
|
||||
mexceldoktyp = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Dim mdeletetempfiles As Boolean = False
|
||||
Property DeleteTempFiles As Boolean
|
||||
Get
|
||||
Return mdeletetempfiles
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
mdeletetempfiles = value
|
||||
End Set
|
||||
End Property
|
||||
Dim mloglevel As Integer
|
||||
Property Loglevel As Integer
|
||||
Get
|
||||
Return mloglevel
|
||||
End Get
|
||||
Set(value As Integer)
|
||||
mloglevel = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Dim mkillcmd As String
|
||||
Property KillCmd As String
|
||||
Get
|
||||
Return mkillcmd
|
||||
End Get
|
||||
Set(value As String)
|
||||
mkillcmd = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
|
||||
|
||||
Public Sub get_params()
|
||||
Me.Connectionstring_EDOKA = My.Settings.Connectionstring_EDOKA
|
||||
Me.Connectionstring_Journale = My.Settings.Connectionstring_Journale
|
||||
Me.EntryPoint_IL = My.Settings.Entrypoint_IL
|
||||
Me.BCK_TimerInterval = My.Settings.BCK_Intervall
|
||||
Me.Document_Timerinterval = My.Settings.Dokument_Intervall
|
||||
Me.WachDir = My.Settings.Watch_Dir
|
||||
Me.TempDir = My.Settings.TempDir
|
||||
Me.TempDirOffice = My.Settings.TempDirOffice
|
||||
Me.AsOffice = My.Settings.OfficeFormat
|
||||
Me.Debug = My.Settings.Debug
|
||||
Me.SendToOnBase = My.Settings.SendOnBase
|
||||
Me.updateedoka = My.Settings.UpdateEDOKA
|
||||
Me.LogFilename = My.Settings.Logfile
|
||||
Me.ExcelCSV = My.Settings.ExcelCSV
|
||||
Me.ExcelDokTyp = My.Settings.ExcelDokType
|
||||
Me.DeleteTempFiles = My.Settings.DeleteTempFiles = "1"
|
||||
Me.Connectionstring_DokTypMapping = My.Settings.ConnectionString_DokTypMapping
|
||||
Me.Loglevel = My.Settings.LogLevel
|
||||
Me.KillCmd = My.Settings.Killcmd
|
||||
End Sub
|
||||
End Class
|
||||
355
Klassen/clsdb.vb
Normal file
355
Klassen/clsdb.vb
Normal file
@@ -0,0 +1,355 @@
|
||||
Imports System.Data
|
||||
Imports System.Data.SqlClient
|
||||
Imports System.Data.SqlDbType
|
||||
Imports System.IO
|
||||
|
||||
Public Class clsdb
|
||||
Dim mdebug As Boolean = False
|
||||
Property Debug As Boolean
|
||||
Get
|
||||
Return mdebug
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
mdebug = value
|
||||
End Set
|
||||
End Property
|
||||
Dim mlogfile As String = ""
|
||||
Property Logfile As String
|
||||
Get
|
||||
Return mlogfile
|
||||
|
||||
End Get
|
||||
Set(value As String)
|
||||
mlogfile = value
|
||||
End Set
|
||||
End Property
|
||||
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
|
||||
Dim m_connectionstring_DokTypMapping As String
|
||||
Property Connectionstring_DokTypMapping As String
|
||||
Get
|
||||
Return m_connectionstring_DokTypMapping
|
||||
End Get
|
||||
Set(value As String)
|
||||
m_connectionstring_DokTypMapping = value
|
||||
End Set
|
||||
End Property
|
||||
Public Sub PDebug(ByVal istring As String)
|
||||
Dim s As String
|
||||
s = Now.ToString("u")
|
||||
istring = s + " - " + istring
|
||||
If Debug = True Then
|
||||
Console.WriteLine(istring)
|
||||
If Logfile <> "" Then
|
||||
Try
|
||||
FileOpen(1, Logfile, OpenMode.Append)
|
||||
WriteLine(1, istring)
|
||||
FileClose(1)
|
||||
Catch
|
||||
|
||||
End Try
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
Public Function Get_Pendente_BCK() As DataTable
|
||||
Dim connection As New SqlConnection(Connectionstring)
|
||||
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
|
||||
Dim dtToReturn As DataTable = New DataTable()
|
||||
Dim ds As New DataSet
|
||||
Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute)
|
||||
scmCmdToExecute.CommandText = "dbo.sp_edoka_onbase"
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@fnkt", SqlDbType.Int, 4, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, 1))
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, ""))
|
||||
scmCmdToExecute.CommandType = CommandType.StoredProcedure
|
||||
scmCmdToExecute.Connection = connection
|
||||
Try
|
||||
sdaAdapter.Fill(ds)
|
||||
Return ds.Tables(0)
|
||||
Catch ex As Exception
|
||||
PDebug(ex.Message)
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Public Function Get_DokType(ByVal dokumentid As String) As String
|
||||
Dim connection As New SqlConnection(Connectionstring)
|
||||
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
|
||||
Dim dtToReturn As DataTable = New DataTable()
|
||||
Dim ds As New DataSet
|
||||
Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute)
|
||||
scmCmdToExecute.CommandText = "dbo.sp_edoka_onbase"
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@fnkt", SqlDbType.Int, 4, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, 8))
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, dokumentid))
|
||||
scmCmdToExecute.CommandType = CommandType.StoredProcedure
|
||||
scmCmdToExecute.Connection = connection
|
||||
Try
|
||||
sdaAdapter.Fill(ds)
|
||||
If ds.Tables(0).Rows.Count > 0 Then
|
||||
Return ds.Tables(0).Rows(0).Item(0)
|
||||
Else
|
||||
Return ""
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
'pdebug("Fehler:Get_OnBase_Datastream: "+ex.Message)
|
||||
End Try
|
||||
End Function
|
||||
Public Function Get_DokTyp_Mapping(ByVal Dokumentid As String) As DataSet
|
||||
Dim doktyp As String
|
||||
doktyp = Get_DokType(Dokumentid)
|
||||
If doktyp = "" Then
|
||||
PDebug("Dokumenttyp zu Dokumentid: " + Dokumentid + " nicht vorhanden")
|
||||
Exit Function
|
||||
End If
|
||||
|
||||
Dim connection As New SqlConnection(Me.Connectionstring_DokTypMapping)
|
||||
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
|
||||
Dim dtToReturn As DataTable = New DataTable()
|
||||
Dim ds As New DataSet
|
||||
Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute)
|
||||
scmCmdToExecute.CommandText = "select * from havi_lookup_Dokumenttyp_Mapping where edoka_dokumenttypnr=" + doktyp
|
||||
scmCmdToExecute.CommandType = CommandType.Text
|
||||
|
||||
scmCmdToExecute.Connection = connection
|
||||
Try
|
||||
sdaAdapter.Fill(ds)
|
||||
Return ds
|
||||
Catch ex As Exception
|
||||
PDebug("Fehler:Get_OnBase_Datastream: " + ex.Message)
|
||||
End Try
|
||||
End Function
|
||||
|
||||
|
||||
Public Function Get_OnBase_Datastream(ByVal dokumentid As String) As DataSet
|
||||
'Dim dsdoktyp As New DataSet
|
||||
'dsdoktyp = Get_DokTyp_Mapping(dokumentid)
|
||||
|
||||
'Try
|
||||
' If dsdoktyp.Tables(0).Rows.Count < 1 Then
|
||||
' PDebug("EDOKA-OnBase-Mapping für " + dokumentid + " nicht möglich")
|
||||
' Exit Function
|
||||
' End If
|
||||
'Catch
|
||||
' PDebug("EDOKA-OnBase-Mapping für " + dokumentid + " nicht möglcih")
|
||||
' Exit Function
|
||||
'End Try
|
||||
|
||||
|
||||
Dim connection As New SqlConnection(Connectionstring)
|
||||
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
|
||||
Dim dtToReturn As DataTable = New DataTable()
|
||||
Dim ds As New DataSet
|
||||
Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute)
|
||||
scmCmdToExecute.CommandText = "dbo.sp_edoka_onbase"
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@fnkt", SqlDbType.Int, 4, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, 2))
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, dokumentid))
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@value1", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, ""))
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@value2", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, ""))
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@value3", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, ""))
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@value4", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, ""))
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@value5", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, ""))
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@value6", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, ""))
|
||||
'scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, dokumentid))
|
||||
'scmCmdToExecute.Parameters.Add(New SqlParameter("@value1", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, dsdoktyp.Tables(0).Rows(0).Item(0)))
|
||||
'scmCmdToExecute.Parameters.Add(New SqlParameter("@value2", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, dsdoktyp.Tables(0).Rows(0).Item(1)))
|
||||
'scmCmdToExecute.Parameters.Add(New SqlParameter("@value3", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, dsdoktyp.Tables(0).Rows(0).Item(2)))
|
||||
'scmCmdToExecute.Parameters.Add(New SqlParameter("@value4", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, dsdoktyp.Tables(0).Rows(0).Item(3)))
|
||||
'scmCmdToExecute.Parameters.Add(New SqlParameter("@value5", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, dsdoktyp.Tables(0).Rows(0).Item(4)))
|
||||
'scmCmdToExecute.Parameters.Add(New SqlParameter("@value6", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, dsdoktyp.Tables(0).Rows(0).Item(5)))
|
||||
|
||||
scmCmdToExecute.CommandType = CommandType.StoredProcedure
|
||||
scmCmdToExecute.Connection = connection
|
||||
Try
|
||||
sdaAdapter.Fill(ds)
|
||||
Return ds
|
||||
Catch ex As Exception
|
||||
PDebug("Fehler:Get_OnBase_Datastream: " + ex.Message)
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Public Function Get_Status(ByVal Dokumentid As String)
|
||||
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
|
||||
scmCmdToExecute.CommandText = "dbo.SP_Dokumentstatus_statushandling_Select"
|
||||
|
||||
Try
|
||||
scmCmdToExecute.CommandType = CommandType.StoredProcedure
|
||||
Dim dtToReturn As DataTable = New DataTable()
|
||||
Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute)
|
||||
|
||||
Dim connection As New SqlConnection(Connectionstring)
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 22, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Dokumentid))
|
||||
scmCmdToExecute.Connection = connection
|
||||
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()
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Public Sub insert_history_status(ByVal statusnr As Integer, ByVal dokumentid As String)
|
||||
Try
|
||||
Dim connection As New SqlConnection(Connectionstring)
|
||||
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
|
||||
Dim dtToReturn As DataTable = New DataTable()
|
||||
Dim ds As New DataSet
|
||||
Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute)
|
||||
scmCmdToExecute.CommandText = "dbo.sp_edoka_onbase"
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@fnkt", SqlDbType.Int, 4, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, 3))
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, dokumentid))
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@value1", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, statusnr.ToString))
|
||||
scmCmdToExecute.CommandType = CommandType.StoredProcedure
|
||||
scmCmdToExecute.Connection = connection
|
||||
Try
|
||||
sdaAdapter.Fill(ds)
|
||||
Catch ex As Exception
|
||||
' MsgBox(ex.Message)
|
||||
End Try
|
||||
Catch ex As Exception
|
||||
Threading.Thread.Sleep(1000)
|
||||
|
||||
'MsgBox(ex.Message)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Public Sub update_dokument(ByVal statusnr As Integer, ByVal dokumentid As String)
|
||||
Try
|
||||
Dim connection As New SqlConnection(Connectionstring)
|
||||
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
|
||||
Dim dtToReturn As DataTable = New DataTable()
|
||||
Dim ds As New DataSet
|
||||
Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute)
|
||||
scmCmdToExecute.CommandText = "dbo.sp_edoka_onbase"
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@fnkt", SqlDbType.Int, 4, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, 4))
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, dokumentid))
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@value1", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, statusnr.ToString))
|
||||
scmCmdToExecute.CommandType = CommandType.StoredProcedure
|
||||
scmCmdToExecute.Connection = connection
|
||||
Try
|
||||
sdaAdapter.Fill(ds)
|
||||
Catch ex As Exception
|
||||
' MsgBox(ex.Message)
|
||||
End Try
|
||||
Catch ex As Exception
|
||||
Threading.Thread.Sleep(1000)
|
||||
|
||||
'MsgBox(ex.Message)
|
||||
End Try
|
||||
End Sub
|
||||
Public Function Get_Archivdokumente() As DataTable
|
||||
Try
|
||||
Dim connection As New SqlConnection(Connectionstring)
|
||||
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
|
||||
Dim dtToReturn As DataTable = New DataTable()
|
||||
Dim ds As New DataSet
|
||||
Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute)
|
||||
scmCmdToExecute.CommandText = "dbo.sp_edoka_onbase"
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@fnkt", SqlDbType.Int, 4, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, 5))
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, ""))
|
||||
scmCmdToExecute.CommandType = CommandType.StoredProcedure
|
||||
scmCmdToExecute.Connection = connection
|
||||
Try
|
||||
sdaAdapter.Fill(ds)
|
||||
Return ds.Tables(0)
|
||||
Catch ex As Exception
|
||||
' MsgBox(ex.Message)
|
||||
End Try
|
||||
Catch ex As Exception
|
||||
Threading.Thread.Sleep(1000)
|
||||
|
||||
'MsgBox(ex.Message)
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Public Function Get_Dokument(ByVal dokumentid As String) As DataTable
|
||||
Try
|
||||
Dim connection As New SqlConnection(Connectionstring)
|
||||
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
|
||||
Dim dtToReturn As DataTable = New DataTable()
|
||||
Dim ds As New DataSet
|
||||
Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute)
|
||||
scmCmdToExecute.CommandText = "dbo.sp_edoka_onbase"
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@fnkt", SqlDbType.Int, 4, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, 6))
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, dokumentid))
|
||||
scmCmdToExecute.CommandType = CommandType.StoredProcedure
|
||||
scmCmdToExecute.Connection = connection
|
||||
Try
|
||||
sdaAdapter.Fill(ds)
|
||||
Return ds.Tables(0)
|
||||
Catch ex As Exception
|
||||
' MsgBox(ex.Message)
|
||||
End Try
|
||||
Catch ex As Exception
|
||||
Threading.Thread.Sleep(1000)
|
||||
|
||||
'MsgBox(ex.Message)
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Public Function Get_From_DB(ByVal sDokumentID As String, ByVal sDokumentName As String) As Boolean
|
||||
Dim connection As New SqlConnection()
|
||||
Dim da As New SqlDataAdapter("Select * From doks where DokumentID='" + sDokumentID + "'", connection)
|
||||
Dim CB As SqlCommandBuilder = New SqlCommandBuilder(da)
|
||||
Dim ds As New DataSet()
|
||||
|
||||
Try
|
||||
'Connectionstring zur Datenbank
|
||||
connection.ConnectionString = Connectionstring
|
||||
connection.Open()
|
||||
da.Fill(ds, "docs")
|
||||
Dim myRow As DataRow
|
||||
myRow = ds.Tables(0).Rows(0)
|
||||
Dim MyData() As Byte
|
||||
MyData = myRow.Item(1)
|
||||
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 Update_EDOKA_IL_Status(ByVal Dokumentid As String, ByVal response As String, status As String)
|
||||
Try
|
||||
Dim connection As New SqlConnection(Connectionstring)
|
||||
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
|
||||
Dim dtToReturn As DataTable = New DataTable()
|
||||
Dim ds As New DataSet
|
||||
Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute)
|
||||
scmCmdToExecute.CommandText = "dbo.sp_edoka_onbase"
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@fnkt", SqlDbType.Int, 4, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, 7))
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, Dokumentid))
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@value1", SqlDbType.VarChar, 4096, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, response))
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@value2", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, status))
|
||||
scmCmdToExecute.CommandType = CommandType.StoredProcedure
|
||||
scmCmdToExecute.Connection = connection
|
||||
Try
|
||||
sdaAdapter.Fill(ds)
|
||||
Return ds.Tables(0)
|
||||
Catch ex As Exception
|
||||
' MsgBox(ex.Message)
|
||||
End Try
|
||||
Catch ex As Exception
|
||||
Threading.Thread.Sleep(1000)
|
||||
|
||||
'MsgBox(ex.Message)
|
||||
End Try
|
||||
End Function
|
||||
End Class
|
||||
151
Klassen/clsexcel.vb
Normal file
151
Klassen/clsexcel.vb
Normal file
@@ -0,0 +1,151 @@
|
||||
Imports Microsoft.Office.Interop
|
||||
Imports System.Data.SqlClient
|
||||
Imports System.Data.SqlTypes
|
||||
Imports System.IO
|
||||
|
||||
Public Class clsexcel
|
||||
Dim objexcel As Excel.Application 'Seit Office 2003
|
||||
Dim docexcel As Excel.Workbook
|
||||
Dim sheetexcel As Excel.Worksheet
|
||||
Public Excelfile As String = ""
|
||||
Dim shXL As Excel.Worksheet
|
||||
Dim ds As New DataSet
|
||||
Public exceldata As New DataTable
|
||||
Public dokumenttypnr As Integer
|
||||
Public CSVPath As String
|
||||
Public Connectionstring As String
|
||||
|
||||
|
||||
Public Sub New()
|
||||
Try
|
||||
Dim csv As New MyNameSpace.CSVDataAdapter(CSVPath, True, ";")
|
||||
csv.Fill(ds)
|
||||
exceldata = ds.Tables(0).Copy
|
||||
Catch
|
||||
End Try
|
||||
End Sub
|
||||
Public Sub New(ByVal csvpath As String)
|
||||
Try
|
||||
Dim csv As New MyNameSpace.CSVDataAdapter(csvpath, True, ";")
|
||||
csv.Fill(ds)
|
||||
exceldata = ds.Tables(0).Copy
|
||||
Catch
|
||||
End Try
|
||||
End Sub
|
||||
Public Function Check_Excel(ByVal dokumentid As String) As Boolean
|
||||
Try
|
||||
Dim db As New clsdb
|
||||
db.Connectionstring = Connectionstring
|
||||
db.Debug = False
|
||||
db.Logfile = ""
|
||||
Dim dt As New DataTable
|
||||
dt = db.Get_Dokument(dokumentid)
|
||||
For Each r As DataRow In exceldata.Rows
|
||||
If r("dokumenttypnr") = dt.Rows(0).Item("dokumenttypnr").value Then
|
||||
dokumenttypnr = dt.Rows(0).Item("dokumenttypnr")
|
||||
Return True
|
||||
Exit Function
|
||||
End If
|
||||
Next
|
||||
Return False
|
||||
Catch ex As Exception
|
||||
Return False
|
||||
End Try
|
||||
End Function
|
||||
'Public Function Get_Excel(ByVal dokumentid As String) As Boolean
|
||||
' Try
|
||||
' Dim dm As New DocMgmt
|
||||
' Dim doc As New DocMgmt
|
||||
' Dim tdoctype As New DataTable
|
||||
' Dim doctype As String
|
||||
' Dim dokumenttypnr As Integer
|
||||
' Dim dateiformat As String
|
||||
' 'BUD - 2006.10.04
|
||||
' Dim istFarbigArchivieren As Boolean = False
|
||||
' Dim d As New edokadb.clsDokument
|
||||
' d.cpMainConnectionProvider = conn_edoka
|
||||
' d.sDokumentid = New SqlString(CType(dokumentid, String))
|
||||
' d.SelectOne()
|
||||
' dokumenttypnr = d.iDokumenttypnr.Value
|
||||
' doctype = GetDocType(d.sDokumentname.Value)
|
||||
' dateiformat = doctype
|
||||
' d.Dispose()
|
||||
|
||||
' Select Case UCase(doctype)
|
||||
' Case "XLS", "XLSX", "XLSM", "XLT", "XLTX", "XLTM"
|
||||
' Excelfile = Params.ExcelPath + dokumentid + "." + doctype
|
||||
' End Select
|
||||
|
||||
' If File.Exists(Excelfile) Then
|
||||
' File.Delete(Excelfile)
|
||||
' End If
|
||||
|
||||
' If doc.Get_From_DB(dokumentid, Excelfile) = False Then
|
||||
' Return True
|
||||
' End If
|
||||
' Catch
|
||||
' Return False
|
||||
' End Try
|
||||
|
||||
'End Function
|
||||
|
||||
Public Function Get_Excel_Values(ByVal dokumentid As String)
|
||||
Try
|
||||
' dokumenttypnr = 2421
|
||||
' Excelfile = "k:\edoka\OFFEDK0002019000455228.xlsm"
|
||||
'Get_Excel(dokumentid)
|
||||
objexcel = New Excel.Application
|
||||
sheetexcel = New Excel.Worksheet
|
||||
objexcel.Workbooks.Open(Excelfile)
|
||||
For Each r As DataRow In exceldata.Rows
|
||||
|
||||
If r("dokumenttypnr") = dokumenttypnr Then
|
||||
Try
|
||||
Dim wert As String
|
||||
Dim sheetno As Integer
|
||||
Dim rowno As Integer
|
||||
Dim colno As Integer
|
||||
rowno = r("rowindex")
|
||||
colno = r("columnindex")
|
||||
sheetno = r("sheet")
|
||||
wert = objexcel.ActiveWorkbook.Sheets(sheetno).Cells(rowno, colno).value().ToString
|
||||
Dokumentwert_Sichern(r("Bezeichnung") + ";" + wert, r("valuenr"), dokumentid)
|
||||
Catch ex As Exception
|
||||
MsgBox(ex.Message)
|
||||
End Try
|
||||
|
||||
End If
|
||||
Next
|
||||
Catch
|
||||
Finally
|
||||
sheetexcel = Nothing
|
||||
objexcel.ActiveWorkbook.Close(False)
|
||||
objexcel.Quit()
|
||||
objexcel = Nothing
|
||||
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Public Sub Dokumentwert_Sichern(ByVal wert As String, ByVal feldnr As Integer, ByVal dokumentid As String)
|
||||
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
|
||||
Dim conn As New SqlConnection(Connectionstring)
|
||||
scmCmdToExecute.CommandText = "dbo.SP_Dokument_Information_Wert"
|
||||
scmCmdToExecute.CommandType = CommandType.StoredProcedure
|
||||
scmCmdToExecute.Connection = conn
|
||||
scmCmdToExecute.Connection.Open()
|
||||
Try
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@dokumentid", SqlDbType.VarChar, 22, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, dokumentid))
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@vorlagenfeldnr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, feldnr))
|
||||
scmCmdToExecute.Parameters.Add(New SqlParameter("@value", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, wert))
|
||||
scmCmdToExecute.ExecuteNonQuery()
|
||||
Catch ex As Exception
|
||||
' // some error occured. Bubble it to caller and encapsulate Exception object
|
||||
Throw New Exception("Dokument_Information_Wert::" & scmCmdToExecute.CommandText & "::Error occured." & ex.Message, ex)
|
||||
Finally
|
||||
scmCmdToExecute.Connection.Close()
|
||||
scmCmdToExecute.Dispose()
|
||||
conn.Dispose()
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
Reference in New Issue
Block a user