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.

106 lines
4.0 KiB

Imports System.Data
Imports System.Data.SqlClient
Imports System.Data.SqlTypes
Imports System.IO
Public Class clsImportdata
#Region "Deklarationen"
Dim Importdata As New DataSet
#End Region
Dim m_partnernr As Integer
Dim m_dokumenttypnr As Integer
Dim m_dsrfilename As String
Dim m_indexfilename As String
Dim m_dokumentid As String
Dim m_blkunde As Integer
Public Function Importdaten_erstellen(ByVal partnernr As Integer, ByVal dokumenttypnr As Integer, ByVal DSRFilename As String, ByVal indexfilename As String, ByVal edkb08dir As String, ByVal dokumentid As String, ByVal blkunde As Boolean) As Boolean
LogEntry.Writelog(Log.Logtype.Debug, "Importdaten:")
LogEntry.Writelog(Log.Logtype.Debug, "Partner:" + partnernr.ToString)
LogEntry.Writelog(Log.Logtype.Debug, "Doktype:" + dokumenttypnr.ToString)
LogEntry.Writelog(Log.Logtype.Debug, "DSRFile:" + DSRFilename)
LogEntry.Writelog(Log.Logtype.Debug, "Indexfile:" + indexfilename)
LogEntry.Writelog(Log.Logtype.Debug, "EDKB08Dir" + edkb08dir)
LogEntry.Writelog(Log.Logtype.Debug, "Dokumentid:" + dokumentid)
LogEntry.Writelog(Log.Logtype.Debug, "BLKunde:" + blkunde.ToString)
Try
Importdata.Tables.Clear()
Importdata.ReadXml(Globals.ApplicationPath + "edkb08struktur.xml")
Importdata.Tables(0).Columns.Add("dokumentid")
Importdata.Tables(0).Columns.Add("blkunde")
m_partnernr = partnernr
m_dokumenttypnr = dokumenttypnr
m_dsrfilename = DSRFilename
m_indexfilename = indexfilename
m_dokumentid = dokumentid
If blkunde = True Then m_blkunde = 1 Else m_blkunde = 0
If generate_indexdata() Then
Dim filePath As String = DSRFilename
Dim slashPosition As Integer = filePath.LastIndexOf("\")
Dim filenameOnly As String = filePath.Substring(slashPosition + 1)
IO.File.Move(DSRFilename, edkb08dir + filenameOnly)
filePath = indexfilename
slashPosition = filePath.LastIndexOf("\")
filenameOnly = filePath.Substring(slashPosition + 1)
IO.File.Move(indexfilename, edkb08dir + filenameOnly)
Return True
End If
Return False
Catch ex As Exception
LogEntry.Writelog(Log.Logtype.Debug, "Importdaten generieren Fehler: " + ex.Message)
Return False
End Try
End Function
Public Function generate_indexdata()
Try
Dim dr As DataRow
Dim i As Integer = 0
dr = Importdata.Tables(0).NewRow
Try
While i < 40
dr.Item(i) = ""
i = i + 1
End While
Catch
End Try
dr.Item("Funktion") = "ADD"
dr.Item("PARTNERNR") = Me.m_partnernr.ToString
dr.Item("Dokumenttypnr") = Me.m_dokumenttypnr.ToString
Dim filePath As String = Me.m_dsrfilename
Dim slashPosition = filePath.LastIndexOf("\")
Dim filenameOnly = filePath.Substring(slashPosition + 1)
dr.Item("dateiname") = filenameOnly
dr.Item("Dateiformat") = "PDF"
dr.Item("Archivdatum") = Now.ToString
dr.Item("Ersteller") = "EDKB14"
dr.Item("HERKUNFTSAPPLIKATION") = "EDKB14"
dr.Item("Dokumentid") = Me.m_dokumentid
'dr.Item("Dokumentidbdr") = ""
If m_blkunde = 1 Then
dr.Item("BLKunde") = "1"
Else
dr.Item("BLKunde") = "0"
End If
'dr.Item("Bezeichnung") = ""
Importdata.Tables(0).Rows.Add(dr)
Importdata.Tables(0).Rows(0).Delete()
Importdata.Tables(0).AcceptChanges()
Importdata.WriteXml(Me.m_indexfilename)
Return True
Catch ex As Exception
Return False
End Try
End Function
End Class