Imports System.IO.File Imports System.Data.SqlClient Imports System.Data.SqlTypes Imports System.ComponentModel Imports System.IO Imports System.SystemException Imports System.Reflection Imports System Imports System.Text Module ModMain Dim arg() = Environment.GetCommandLineArgs() Dim ds As New DataSet Dim counter As Integer = 0 Dim argumente As New clsArgs Dim params As New Parameters Dim d As Date Sub Main() If Not argumente.CheckArgs(arg) = True Then Console.WriteLine("Fehlerhaft abgebrochen.") Exit Sub End If If UCase(argumente.Typ) = "DOK" Then import_dokumentcoldindexwert() Exit Sub End If If UCase(argumente.Typ) = "DOKS" Then import_dokument() Exit Sub End If If UCase(argumente.Typ) = "EDEXBL" Then import_EDEXBL() Exit Sub End If If UCase(argumente.Typ) = "EDEXBL1" Then import_EDEXBL1() Exit Sub End If If UCase(argumente.Typ) = "MFS" Then import_Mehrfachscan() Exit Sub End If If UCase(argumente.Typ) = "VV" Then VV_Verarbeitung() Exit Sub End If Dim str As String Dim fileno As Integer = 0 Dim lc As Integer = 0 If UCase(argumente.Typ) = "ZV" Then import_zv() If UCase(argumente.Typ) = "HOST" Then import_host() If UCase(argumente.Typ) = "HOST1" Then import_HOST1() If UCase(argumente.Typ) = "BL" Then import_bl() If UCase(argumente.Typ) = "BL1" Then import_bl1() If UCase(argumente.Typ) = "EDOKA" Then import_EDOKA() Exit Sub Dim t As New System.IO.StreamReader(argumente.inputfilename) Dim s As StreamWriter s = New StreamWriter(argumente.inputfilename + "_" + fileno.ToString + ".csv") While Not t.EndOfStream str = t.ReadLine() s.WriteLine(str) If lc > argumente.Anzahl Then lc = 0 fileno += 1 s.Flush() s.Close() s = Nothing s = New StreamWriter(argumente.inputfilename + "_" + fileno.ToString + ".csv") lc = -1 End If lc += 1 End While s.Flush() t.Close() s.Close() Console.ReadLine() End Sub #Region "Banklagernd" Private Sub Import_BL() Dim counter As Integer = 0 Dim counterin As Integer = 0 Dim splits() As String Dim res As String = "" Dim delimiter As Char = vbTab Console.WriteLine("Start BL-Import") Dim s As String Dim fi As New IO.StreamReader(argumente.inputfilename, Encoding.Default) Dim fo As New IO.StreamWriter(argumente.inputfilename + ".out", False, Encoding.GetEncoding(850)) If File.Exists(params.TMPPath + "\" + argumente.Typ + "_scriptfile.sql") Then FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", OpenMode.Append) Else FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", OpenMode.Output) End If WriteLine(1, "bulk insert tmpbl1 from '" + argumente.inputfilename + ".out" + "' with (FIELDTERMINATOR = '\t',ROWTERMINATOR = '\n', codepage='850')") While Not fi.EndOfStream s = fi.ReadLine counterin = counterin + 1 s = s.Replace("""", "") splits = Split(s, "@$@", -1, CompareMethod.Text) res = "" res = res + splits(1) + delimiter res = res + splits(7) + delimiter res = res + splits(8) + delimiter res = res + splits(9) + delimiter res = res + splits(10) + delimiter res = res + splits(11) + delimiter res = res + splits(12) + delimiter res = res + splits(13) + delimiter res = res + splits(14) + delimiter res = res + splits(15) + delimiter res = res + splits(16) + delimiter fo.WriteLine(res) counter = counter + 1 End While fo.Flush() fo.Close() fi.Close() Console.WriteLine("Anzahl Datensätze gelesen :" & counterin.ToString) Console.WriteLine("Anzahl Datensätze geschrieben:" & counter.ToString) Console.WriteLine("BL Ende:" & Now) Console.WriteLine("") Console.ReadLine() End Sub Private Sub Import_BL1() Dim counter As Integer = 0 Dim counterin As Integer = 0 Dim splits() As String Dim res As String = "" Dim delimiter As Char = vbTab Console.WriteLine("Start BL1-Import") Dim s As String Dim fi As New IO.StreamReader(argumente.inputfilename, Encoding.Default) Dim fo As New IO.StreamWriter(argumente.inputfilename + ".out", False, Encoding.GetEncoding(850)) If File.Exists(params.TMPPath + "\" + argumente.Typ + "_scriptfile.sql") Then FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", OpenMode.Append) Else FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", OpenMode.Output) End If WriteLine(1, "bulk insert tmpbl1 from '" + argumente.inputfilename + ".out" + "' with (FIELDTERMINATOR = '\t',ROWTERMINATOR = '\n', codepage='850')") While Not fi.EndOfStream s = fi.ReadLine counterin = counterin + 1 s = s.Replace("""", "") splits = Split(s, "@$@", -1, CompareMethod.Text) res = "" res = res + splits(0) + delimiter res = res + splits(1) + delimiter res = res + splits(2) + delimiter res = res + splits(3) + delimiter res = res + splits(5) + delimiter res = res + splits(6) + delimiter res = res + splits(10) + delimiter res = res + splits(11) + delimiter res = res + splits(12) + delimiter res = res + splits(13) + delimiter fo.WriteLine(res) counter = counter + 1 End While fo.Flush() fo.Close() fi.Close() Console.WriteLine("Anzahl Datensätze gelesen :" & counterin.ToString) Console.WriteLine("Anzahl Datensätze geschrieben:" & counter.ToString) Console.WriteLine("BL1 Ende:" & Now) Console.WriteLine("") Console.ReadLine() End Sub #End Region #Region "Partner" Private Sub Import_EDOKA() Dim counter As Integer = 0 Dim counterin As Integer = 0 Dim splits() As String Dim res As String = "" Dim delimiter As Char = vbTab Console.WriteLine("Start EDOKA-Partner-Import") Dim s As String Dim fi As New IO.StreamReader(argumente.inputfilename, Encoding.Default) Dim fo As New IO.StreamWriter(argumente.inputfilename + ".out", False, Encoding.GetEncoding(850)) If File.Exists(params.TMPPath + "\" + argumente.Typ + "_scriptfile.sql") Then FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", OpenMode.Append) Else FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", OpenMode.Output) End If WriteLine(1, "bulk insert tmpbl1 from '" + argumente.inputfilename + ".out" + "' with (FIELDTERMINATOR = '\t',ROWTERMINATOR = '\n', codepage='850')") While Not fi.EndOfStream s = fi.ReadLine counterin = counterin + 1 s = s.Replace("""", "") splits = Split(s, "@$@", -1, CompareMethod.Text) res = "" res = res + splits(0) + delimiter res = res + splits(1) + delimiter res = res + splits(2) + delimiter res = res + splits(3) + delimiter res = res + splits(4) + delimiter res = res + splits(5) + delimiter res = res + splits(6) + delimiter res = res + splits(7) + delimiter res = res + splits(9) + delimiter res = res + splits(10) + delimiter res = res + splits(12) + delimiter res = res + splits(13) + delimiter res = res + splits(14) + delimiter res = res + splits(15) + delimiter res = res + splits(18) + delimiter fo.WriteLine(res) counter = counter + 1 End While fo.Flush() fo.Close() fi.Close() Console.WriteLine("Anzahl Datensätze gelesen :" & counterin.ToString) Console.WriteLine("Anzahl Datensätze geschrieben:" & counter.ToString) Console.WriteLine("EDOKA-Partner Ende:" & Now) Console.WriteLine("") Console.ReadLine() End Sub #End Region #Region "VV" Private Sub import_zv() Dim edokacon As New SqlConnection(params.ConnectionStringEDOKA_ZV) edokacon.Open() Dim zvcounter As Integer = 0 Dim zvcounterin As Integer = 0 Console.WriteLine("Start ZV-Bearbeitung: " & Now) Dim s As String Dim fi As New IO.StreamReader(argumente.inputfilename) Dim fo As New IO.StreamWriter(argumente.inputfilename + ".out") 'Dim fo1 As New IO.StreamWriter(argumente.inputfilename + ".keyout") If File.Exists(params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql") Then FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", OpenMode.Append) Else FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", FileMode.Create) End If WriteLine(1, "bulk insert tmpzv from '" + argumente.inputfilename + ".out" + "' with (FIELDTERMINATOR = '\t',ROWTERMINATOR = '\n')") 'WriteLine(1, "bulk insert zv_cold_keys from '" + argumente.inputfilename + ".keyout" + "' with (FIELDTERMINATOR = '\t',ROWTERMINATOR = '\n')") FileClose(1) Dim splits() As String Dim delimiter As Char = vbTab While Not fi.EndOfStream s = fi.ReadLine zvcounterin = zvcounterin + 1 'fo.WriteLine(s) s = s.Replace("""", "") 's = s.Replace(""",", "|") 's = s.Replace(",""", "|") 's = s.Replace("""", "") 'MsgBox(s) splits = Split(s, "@$@", -1, CompareMethod.Text) ' splits = Split(s, "|", -1, CompareMethod.Text) If splits(10) = "1969-12-31" Then splits(10) = "" Else s = splits(10) splits(10) = s.Substring(8, 2) + "." + s.Substring(5, 2) + "." + s.Substring(0, 4) End If If splits(12) = "0" Then splits(12) = "000" End If While Len(splits(12)) < 3 splits(12) = "0" + splits(12) End While splits(12) = Trim(splits(12)) If splits(18) = "1969-12-31" Then splits(18) = "" Else s = splits(18) splits(18) = s.Substring(8, 2) + "." + s.Substring(5, 2) + "." + s.Substring(0, 4) End If s = splits(13) s = s.Replace("""", "") If Trim(s) = "" Then Dim vvnr As String = splits(15) vvnr = vvnr.Replace("""", "") s = get_nrpar00_from_vv(vvnr, edokacon) splits(13) = s End If Dim res As String = "" For Each s In splits If Len(s) > 0 Then If s.Substring(0, 1) <> """" Then s = """" & s & """" Else s = """" & """" End If 'res = res + s + "," s = s.Replace("""", "") res = res + s + delimiter Next 'res = res + Now + "," res = res + Now + delimiter If splits(10) = " " Then ' res = res + splits(18) + " 00:00:00," res = res + splits(18) + " 00:00:00" + delimiter Else ' res = res + splits(10) + " 00:00:00," res = res + splits(10) + " 00:00:00" + delimiter End If s = splits(12) s = Trim(s) If Len(s) = 1 Then s = "0" + s + "0" If Len(s) = 2 Then s = "0" + s s = s.Substring(0, Len(s) - 2) + "." + s.Substring(Len(s) - 2, 2) res = res + s + vbTab fo.WriteLine(res) s = splits(0).Replace("""", "") res = s s = splits(17).Replace("""", "") res = res + s s = splits(8).Replace("""", "") res = res + s res = res + vbTab + splits(0) + vbTab + splits(17) + vbTab + splits(8) res = res.Replace("""", "") 'fo1.WriteLine(res) zvcounter = zvcounter + 1 'If zvcounter = 467887 Then ' MsgBox("xx") 'End If End While fo.Flush() fo.Close() 'fo1.Flush() 'fo1.Close() fi.Close() Console.WriteLine("Anzahl Datensätze gelesen :" & zvcounterin.ToString) Console.WriteLine("Anzahl Datensätze geschrieben:" & zvcounter.ToString) Console.WriteLine("ZV Ende:" & Now) Console.WriteLine("") Console.WriteLine("Press any key to continue...") edokacon.Close() Console.ReadLine() End Sub Private Function get_nrpar00_from_vv(ByVal vvnr As String, ByVal con As SqlConnection) As String Dim scmCmdToExecute As SqlCommand = New SqlCommand Dim s As String scmCmdToExecute.CommandText = "dbo.sp_get_nrpar00" scmCmdToExecute.CommandType = CommandType.StoredProcedure scmCmdToExecute.Parameters.Add(New SqlParameter("@nevvg00", SqlDbType.VarChar, 17, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, vvnr)) scmCmdToExecute.Parameters.Add(New SqlParameter("@nrpar00", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, 0)) scmCmdToExecute.Connection = con 'Try ' conn_edoka.OpenConnection() 'Catch 'End Try Try scmCmdToExecute.ExecuteNonQuery() s = scmCmdToExecute.Parameters("@nrpar00").Value s = Trim(s) If s = "0" Then Return "" Else While Len(s) < 8 s = "0" + s End While Return s End If Catch ex As Exception Return "" Finally scmCmdToExecute.Dispose() 'conn_edoka.CloseConnection(True) End Try End Function '[InsertTimestamp] [smalldatetime] NULL, '[valdat] [smalldatetime] NULL, '[betrag] [float] NULL Private Sub insert_data(ByRef dt As DataTable, ByRef con As SqlConnection) Dim cmd As New SqlCommand("", con) cmd.CommandType = CommandType.Text Dim sql As String = "" For Each r As DataRow In dt.Rows sql = "Insert " & dt.TableName & "(" For Each c As DataColumn In dt.Columns sql = sql + c.ColumnName + "," Next sql = Left(sql, Len(sql) - 1) sql = sql + ") values(" For Each c As DataColumn In dt.Columns If c.DataType.ToString = "System.String" Or c.DataType.ToString = "System.DateTime" Then sql = sql + "'" + r.Item(c.ColumnName) + "'," Else sql = sql + r.Item(c.ColumnName).ToString + "," End If Next sql = Left(sql, Len(sql) - 1) sql = sql + ")" cmd.CommandText = sql cmd.ExecuteNonQuery() Next End Sub Private Sub ImportTableToSQL(ByRef aDataTable As DataTable, ByRef aConnection As SqlClient.SqlConnection) ' Create a command for the DataAdapter Dim cmd As New SqlClient.SqlCommand("Select Top 1 * From " & aDataTable.TableName, aConnection) ' Create the DataAdapter (needed for creating the sql-statement) Dim da As New SqlClient.SqlDataAdapter(cmd) Dim tmpds As New DataSet ' Fill our DataAdapter with Data from our DataTable da.Fill(tmpds, "Data") da.FillSchema(aDataTable, SchemaType.Source) da.Fill(aDataTable.DataSet, aDataTable.TableName) ' Create the SQL Command Builder Dim cb As New SqlClient.SqlCommandBuilder(da) cb.SetAllValues = False ' Go thru all rows and insert the data For Each r As DataRow In aDataTable.Rows ' Create the Insert-Command Dim cmdResult As New SqlClient.SqlCommand(cb.GetInsertCommand.CommandText, aConnection) cmdResult.Parameters.Clear() Dim i As Integer = 0 ' Go thru all columns in our DataTable and create a SQLParameter for our Statement with the value ' from our DataTable. For Each col As DataColumn In tmpds.Tables(0).Columns i += 1 cmdResult.Parameters.AddWithValue("@P" & i, r.Item(col.ColumnName)) Next 'For Each col As DataColumn In aDataTable.Columns ' i += 1 ' ' cmdResult.Parameters.AddWithValue("@p" & i, r.Item(col.ColumnName)) 'Next Dim iAffectedRecords As Integer = cmdResult.ExecuteNonQuery() counter += 1 Next End Sub Dim VVCounter As Integer = 0 Private Sub VV_Verarbeitung() Console.WriteLine("Start VV-Import:") Dim connection As New SqlConnection() connection.ConnectionString = params.ConnectionStringEDOKA connection.Open() Dim ds As New DataSet ds.ReadXml(argumente.inputfilename) Console.WriteLine("Anzahl Datensätze gelesen:" & ds.Tables(3).Rows.Count) Console.WriteLine("Start Import:") Dim dt As New DataTable ds.Tables(3).Columns.Add("NRVVG00") ds.Tables(3).Columns.Add("NRSPR00") insert_vv_data(ds.Tables(3), connection, "dbo.vv") Console.WriteLine("Anzahl Datensätze importiert:" & VVCounter.ToString) connection.Close() Console.ReadLine() End Sub Private Sub insert_vv_data(ByRef dt As DataTable, ByRef con As SqlConnection, ByVal tablename As String) Dim cmd As New SqlCommand("", con) cmd.CommandType = CommandType.Text Dim sql As String = "" For Each r As DataRow In dt.Rows sql = "Insert " & tablename & "(" For Each c As DataColumn In dt.Columns If LCase(c.ColumnName) <> "resultcontent_id" Then sql = sql + c.ColumnName + "," Next sql = Left(sql, Len(sql) - 1) sql = sql + ") values(" For Each c As DataColumn In dt.Columns If UCase(c.ColumnName) = "NRSPR00" Then r.Item(c.ColumnName) = 1 End If If UCase(c.ColumnName) = "NRVVG00" Then r.Item(c.ColumnName) = hlp_GetNewKey_vv() End If If UCase(c.ColumnName) = "NRPAR00" Then Dim s As String = r.Item("nrpar00") If Len(s) = 9 Then s = Left(s, 4) + Right(s, 4) r.Item("nrpar00") = s End If End If If LCase(c.ColumnName) <> "resultcontent_id" Then If c.DataType.ToString = "System.String" Or c.DataType.ToString = "System.DateTime" Then sql = sql + "'" + r.Item(c.ColumnName) + "'," Else sql = sql + r.Item(c.ColumnName).ToString + "," End If End If Next sql = Left(sql, Len(sql) - 1) sql = sql + ")" cmd.CommandText = sql cmd.ExecuteNonQuery() VVCounter = VVCounter + 1 Next End Sub Private Function hlp_GetNewKey_vv() As Integer hlp_GetNewKey_vv = 0 Dim ssql As String ssql = "SELECT TOP 1 NRVVG00 + 1 AS NewRow FROM vv Order By NRVVG00 DESC" Dim connection As New SqlConnection() Dim daTemp As New SqlDataAdapter(ssql, connection) Dim dsTemp As New DataSet() Try connection.ConnectionString = params.ConnectionStringEDOKA connection.Open() daTemp.Fill(dsTemp) hlp_GetNewKey_vv = dsTemp.Tables(0).Rows(0).Item(0) Catch ex As Exception Return False Finally dsTemp = Nothing daTemp = Nothing connection.Close() connection = Nothing End Try End Function #End Region #Region "HOST" 'Host-Dokumente bis Avaloq Private Sub import_HOST() Dim zvcounter As Integer = 0 Dim zvcounterin As Integer = 0 Console.WriteLine("Start HOST-Bearbeitung: " & Now) Dim s As String Dim fi As New IO.StreamReader(argumente.inputfilename, Encoding.Default) Dim fo As New IO.StreamWriter(argumente.inputfilename + ".out", False, Encoding.GetEncoding(850)) 'Dim fo1 As New IO.StreamWriter(argumente.inputfilename + ".keyout") If File.Exists(params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql") Then FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", OpenMode.Append) Else FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", FileMode.Create) End If WriteLine(1, "bulk insert tmphost from '" + argumente.inputfilename + ".out" + "' with (FIELDTERMINATOR = '\t',ROWTERMINATOR = '\n', codepage='850')") 'WriteLine(1, "bulk insert zv_cold_keys from '" + argumente.inputfilename + ".keyout" + "' with (FIELDTERMINATOR = '\t',ROWTERMINATOR = '\n')") FileClose(1) Dim splits() As String Dim res As String = "" Dim delimiter As Char = vbTab While Not fi.EndOfStream s = fi.ReadLine zvcounterin = zvcounterin + 1 s = s.Replace("""", "") splits = Split(s, "@$@", -1, CompareMethod.Text) res = "" 'DHA 'hostdata.sPartnernr_inhaber = New SqlString(CType(splits(1), String)) 'hostdata.sPartnernr_zusteller = New SqlString(CType(splits(2), String)) 'hostdata.sPartnername_inhaber = New SqlString(CType(splits(3), String)) 'hostdata.sPartnername_zusteller = New SqlString(CType(splits(4), String)) 'hostdata.sReferenzzeile1 = New SqlString(CType(splits(5), String)) 'hostdata.sReferenzzeile2 = New SqlString(CType(splits(6), String)) 'hostdata.sValutadatum = New SqlString(CType(format_date(splits(8)), String)) 'hostdata.sValutadatum1 = New SqlString(CType(format_date(splits(8)), String)) 'Dim valor As String = "" 'Dim isin As String = "" 'If Trim(splits(19)) <> "" Then ' Dim sp1() As String = splits(19).Split("¦") ' If Trim(sp1(0)) = "" Then ' valor = "" ' isin = "" ' Else ' valor = Trim(sp1(0)) ' isin = Trim(sp1(1)) ' End If 'Else ' valor = "" ' isin = "" 'End If 'hostdata.sValorennr = New SqlString(CType(valor, String)) 'hostdata.sIsinnr = New SqlString(CType(isin, String)) 'hostdata.sDokumentid = New SqlString(CType(splits(9), String)) 'hostdata.sAnzahlseiten = New SqlString(CType(splits(10), String)) 'hostdata.sNachvollziehbarkeit = New SqlString(CType(splits(11), String)) 'hostdata.sArchivdatum = New SqlString(CType(splits(12), String)) 'hostdata.sVvextern1 = New SqlString(CType(splits(13), String)) 'hostdata.sVvextern2 = New SqlString(CType(splits(14), String)) 'hostdata.sEx = New SqlString(CType(splits(15), String)) 'hostdata.sStandamdatum = New SqlString(CType(format_date(splits(18)), String)) 'hostdata.sDokumenttypnr = New SqlString(CType(splits(0), String)) 'hostdata.sLoadid = New SqlString(CType("", String)) 'hostdata.daInserttimestamp = New SqlDateTime(CType(Now, DateTime)) 'hostdata.iInrpar00_inhaber = New SqlInt32(CType(splits(1), Int32)) 'hostdata.iInrpar00_zusteller = New SqlInt32(CType(splits(2), Int32)) 'hostdata.sMailingProductBezeichnung = New SqlString(CType("", String)) 'hostdata.sMetatype = New SqlString(CType("", String)) 'hostdata.sOrdertype = New SqlString(CType("", String)) 'hostdata.sXomaDocID = New SqlString(CType("", String)) 'hostdata.sTransactnr = New SqlString(CType("", String)) 'hostdata.sManr = New SqlString(CType("", String)) 'hostdata.sMailingProduct = New SqlString(CType("", String)) 'hostdata.sBetreffzeile = New SqlString(CType("", String)) ' hostdata.Insert() res = res + splits(1) + delimiter 'partnernr_inhaber nrpar00 res = res + splits(2) + delimiter 'partnernr_zusteller nrparad res = res + splits(3) + delimiter 'partnername-inhaber bkpar00 res = res + splits(4) + delimiter 'partnername_zusteller bkparad res = res + splits(5) + delimiter 'referenzzeile1 nrref1 res = res + splits(6) + delimiter 'referenzzeile2 nrref2 res = res + format_date(splits(7)) + delimiter 'valutadatum dmval00 'res = res + splits(7) + delimiter 'valutadatum DMVAL00 res = res + format_date(splits(8)) + delimiter 'valutadatum1 dmper00 'res = res + splits(8) + delimiter 'valutadatum1 DMPER00 'Valor und ISIN-Nr If Trim(splits(19)) <> "" Then Dim sp1() As String = splits(19).Split("¦") If Trim(sp1(0)) = "" Then res = res + "" + delimiter 'Valornr res = res + "" + delimiter 'isinnr Else res = res + Trim(sp1(0)) + delimiter Try res = res + Trim(sp1(1)) + delimiter Catch res = res + "" + delimiter End Try End If Else res = res + "" + delimiter 'Valornr res = res + "" + delimiter 'isinnr End If res = res + splits(9) + delimiter 'dokumentid nrdok00 res = res + splits(10) + delimiter 'anzahlseiten nrpag00 res = res + splits(11) + delimiter 'nachvollziehbarkeit benav00 res = res + format_date(splits(12)) + delimiter 'archivdatum dmarc00 'res = res + splits(12) + delimiter 'archivdatum dmarc00 res = res + splits(13) + delimiter 'vvestern1 navvg00 res = res + splits(14) + delimiter 'vvextern2 navvg01 res = res + splits(15) + delimiter 'ex CDCOPY00 res = res + format_date1(splits(18)) + delimiter 'standamdatum 'res = res + splits(18) + delimiter 'standamdatum res = res + splits(0) + delimiter 'dokumenttypnr nrdot00 res = res + "" + delimiter 'loadid res = res + Format(Now, "yyyy-MM-dd HH:MM:ss") + delimiter 'Dim yyyy As String 'Dim mmmm As String 'Dim dddd As String 'yyyy = Year(Now) 'mmmm = Month(Now) 'While Len(mmmm) < 2 ' mmmm = "0" + mmmm 'End While 'dddd = Day(Now) 'While Len(dddd) < 2 ' dddd = "0" + dddd 'End While 'res 'res = res + Now.ToString + delimiter 'Inserttimestamp' res = res + splits(1) + delimiter 'inrpar00_inhaber res = res + splits(2) + delimiter 'inrpa00_zusteller res = res + "" + delimiter '[MailingProductBezeichnung] res = res + "" + delimiter '[metatype] res = res + "" + delimiter '[ordertype] res = res + "" + delimiter '[XomaDocID] res = res + "" + delimiter '[transactnr] res = res + "" + delimiter '[manr] res = res + "" + delimiter '[MailingProduct] res = res + "" + delimiter '[Betreffzeile] fo.WriteLine(res) s = splits(0).Replace("""", "") res = s s = splits(17).Replace("""", "") res = res + s s = splits(8).Replace("""", "") res = res + s res = res + vbTab + splits(0) + vbTab + splits(17) + vbTab + splits(8) res = res.Replace("""", "") zvcounter = zvcounter + 1 End While fo.Flush() fo.Close() 'fo1.Flush() 'fo1.Close() fi.Close() Console.WriteLine("Anzahl Datensätze gelesen :" & zvcounterin.ToString) Console.WriteLine("Anzahl Datensätze geschrieben:" & zvcounter.ToString) Console.WriteLine("HOST Ende:" & Now) Console.WriteLine("") 'Console.WriteLine("Press any key to continue...") 'edokacon.Close() 'Console.ReadLine() End Sub Dim DokType As New DataTable Dim PnrMapping As New DataTable 'Host-Dokumente ab Avaloq Private Sub import_HOST1() Dim zvcounter As Integer = 0 Dim zvcounterin As Integer = 0 Console.WriteLine("Start HOST-Bearbeitung: " & Now) Dim s As String Dim fi As New IO.StreamReader(argumente.inputfilename, Encoding.Default) Dim fo As New IO.StreamWriter(argumente.inputfilename + ".out", False, Encoding.GetEncoding(850)) 'Dim fo1 As New IO.StreamWriter(argumente.inputfilename + ".keyout") If File.Exists(params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql") Then FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", OpenMode.Append) Else FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", FileMode.Create) End If WriteLine(1, "bulk insert tmphost from '" + argumente.inputfilename + ".out" + "' with (FIELDTERMINATOR = '\t',ROWTERMINATOR = '\n', codepage='850')") 'WriteLine(1, "bulk insert zv_cold_keys from '" + argumente.inputfilename + ".keyout" + "' with (FIELDTERMINATOR = '\t',ROWTERMINATOR = '\n')") FileClose(1) Dim splits() As String Dim res As String = "" Dim delimiter As Char = vbTab DokType = get_doktypemapping() PnrMapping = get_pnrmapping() While Not fi.EndOfStream s = fi.ReadLine zvcounterin = zvcounterin + 1 s = s.Replace("""", "") splits = Split(s, "@$@", -1, CompareMethod.Text) res = "" '0: Seiten(1) '1: Dokumentid(2559801) '2 Nachvollziehbarkeit BatchPrint | B1_POST '3 1 '4 XOMA Dokumentid OARC00055271-000001-000000002118360 '5: mailingprodukt(cop) '6: Mailingproduktbezeichnung(Kassenbelege) '7: erstellungsdatum(2008 - 11 - 13) '8 2003-08-01-02.33.59.000000 '9: valutadatum(2008 - 11 - 13) '10 10 '11: Betreff(Dritteinzahlung) '12: Transaktionsnummer(119520005) '13: '14: O() '15: partnernr_inhaber(1473042) '16 Inhaber Exclusive Real Estate AG '17 partnernr_zusteller, vvextern1, 2 14730420001 '18 Zusteller Exclusive Real Estate AG '19 162050422100 '20 14730420001 '21: Mitarbeiternr(TG6387) '22: Metatype(COP) '23: Ordertype(DEPOT_PART) Dim i As Integer For i = 0 To 23 splits(i) = Trim(splits(i)) Next Dim ipz As String = Get_PartnerZusteller(splits(17)) res = res + splits(15) + delimiter 'partnernr_inhaber res = res + ipz + delimiter 'partnernr_zusteller res = res + splits(16) + delimiter 'Inhaber res = res + splits(18) + delimiter 'zusteller res = res + "" + delimiter 'ref 1 res = res + "" + delimiter 'ref 2 res = res + format_date(splits(9)) + delimiter 'valuta res = res + format_date(splits(9)) + delimiter 'valutadatum1 res = res + "" + delimiter 'valornr res = res + "" + delimiter 'ISINNr res = res + splits(1) + delimiter 'Dokumentid res = res + splits(0) + delimiter 'anzahlseiten res = res + splits(2) + delimiter 'Nachvollziehbarkeit res = res + splits(8) + delimiter 'archivdatum res = res + splits(19) + delimiter 'vvextern 1 res = res + splits(20) + delimiter 'vvextern 2 res = res + splits(14) + delimiter 'copycode res = res + "" + delimiter 'standamdatum res = res + Set_Doktype(splits(22), splits(23), splits(5)) + delimiter 'dokumenttypnr res = res + "" + delimiter 'loadid res = res + Format(Now, "yyyy-MM-dd HH:MM:ss") + delimiter res = res + splits(15) + delimiter 'inrpar00_inhaber res = res + ipz + delimiter 'inrpa00_zusteller res = res + splits(5) + delimiter res = res + splits(6) + delimiter res = res + splits(11) + delimiter res = res + splits(22) + delimiter res = res + splits(23) + delimiter res = res + splits(4) + delimiter res = res + splits(12) + delimiter res = res + splits(21) + delimiter fo.WriteLine(res) zvcounter = zvcounter + 1 End While fo.Flush() fo.Close() 'fo1.Flush() 'fo1.Close() fi.Close() Console.WriteLine("Anzahl Datensätze gelesen :" & zvcounterin.ToString) Console.WriteLine("Anzahl Datensätze geschrieben:" & zvcounter.ToString) Console.WriteLine("HOST Ende:" & Now) Console.WriteLine("") 'Console.WriteLine("Press any key to continue...") 'edokacon.Close() 'Console.ReadLine() End Sub Private Function format_date(ByVal s As String) As String Dim i As String = s Try If Trim(i) <> "" Then Return i.Substring(0, 4) + i.Substring(5, 2) + i.Substring(8, 2) End If Catch ex As Exception Return s End Try Return s End Function Private Function format_date1(ByVal s As String) As String Dim i As String = s Try If Trim(i) <> "" Then If i.IndexOf("-") < 1 Then Return i.Substring(4, 4) + i.Substring(2, 2) + i.Substring(0, 2) If i.IndexOf("-") = 2 Then Return i.Substring(6, 4) + i.Substring(3, 2) + i.Substring(0, 2) If i.IndexOf("-") = 4 Then Return i.Substring(0, 4) + i.Substring(5, 2) + i.Substring(0, 2) End If Catch ex As Exception Return s End Try Return s End Function Private Function Set_Doktype(ByVal metatype As String, ByVal ordertype As String, ByVal mailingproduct As String) As String Dim result As String = "" If Trim(metatype.ToString) = "" Then Dim rows As DataRow() = DokType.Select("mailingproduct='" + mailingproduct + "' and (ordertype='' or ordertype is null)") If rows.Length < 1 Then result = "FP9999" Else result = rows(0).Item("Doktype") End If Else Dim rows As DataRow() = DokType.Select("mailingproduct='" + mailingproduct + "' and ordertype='defined'") If rows.Length < 1 Then result = "FP9999" Else result = rows(0).Item("Doktype") End If End If If mailingproduct = "xfermon" And metatype = "xfermon" Then If ordertype.Length > 4 Then If ordertype.Substring(0, 5) = "TRANS" Then result = "FP9991" End If End If End If If mailingproduct = "xfermon" And metatype = "xfermon" And ordertype = "CHQI" Then result = "FP9995" If mailingproduct = "xferfee" And metatype = "xferfee" And ordertype = "settl" Then result = "FP9989" If mailingproduct = "depfee" And metatype = "INTR" And ordertype = "MCLOSE" Then result = "FP9997" If mailingproduct = "depfee" And metatype = "INTR" And ordertype = "INTR" Then result = "FP9997" If mailingproduct = "depfee" And metatype = "INTR" And ordertype = "INTR_MIGR" Then result = "FP9997" If mailingproduct = "steuerausweis_fond" Then result = "FP9997" If mailingproduct = "zinsbestaet" Then result = "FP9997" Return result End Function Private Function Get_PartnerZusteller(ByVal nr As String) As String Dim rows As DataRow() = PnrMapping.Select("adressid = '" & nr & "'") If rows.Length < 1 Then Return 0 Else Return rows(0).Item("nrpar00").ToString End If End Function Private Function get_doktypemapping() As DataTable Dim scmCmdToExecute As SqlCommand = New SqlCommand() Dim Conn As New SqlConnection(params.ConnectionStringColdabgleich) scmCmdToExecute.Connection = Conn Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) Try Dim dtToReturn As System.Data.DataTable = New System.Data.DataTable() scmCmdToExecute.CommandText = "Select * from AVQ_DokType" scmCmdToExecute.CommandType = CommandType.Text scmCmdToExecute.Connection.ConnectionString = params.ConnectionStringColdabgleich sdaAdapter.Fill(dtToReturn) Return dtToReturn Catch ex As Exception Throw New Exception("clsApplikation::" & scmCmdToExecute.CommandText & "::Error occured." & ex.Message, ex) Finally scmCmdToExecute.Dispose() sdaAdapter.Dispose() End Try End Function Private Function get_pnrmapping() As DataTable Dim scmCmdToExecute As SqlCommand = New SqlCommand() Dim Conn As New SqlConnection(params.ConnectionStringColdabgleich) scmCmdToExecute.Connection = Conn Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) Try Dim dtToReturn As System.Data.DataTable = New System.Data.DataTable() scmCmdToExecute.CommandText = "Select * from AVQ_PnrMapping" scmCmdToExecute.CommandType = CommandType.Text scmCmdToExecute.Connection.ConnectionString = params.ConnectionStringColdabgleich sdaAdapter.Fill(dtToReturn) 'MsgBox(dtToReturn.Rows.Count) Return dtToReturn Catch ex As Exception Throw New Exception("clsApplikation::" & scmCmdToExecute.CommandText & "::Error occured." & ex.Message, ex) Finally scmCmdToExecute.Dispose() sdaAdapter.Dispose() End Try End Function #End Region #Region "Allgemeine Funktionen" #End Region 'Host-Dokumente bis Avaloq Private Sub import_dokumentcoldindexwert() Dim zvcounter As Integer = 0 Dim zvcounterin As Integer = 0 Console.WriteLine("Start Doktype-Bearbeitung: " & Now) Dim s As String Dim fi As New IO.StreamReader(argumente.inputfilename, Encoding.Default) Dim fo As New IO.StreamWriter(argumente.inputfilename + ".out", False, Encoding.GetEncoding(850)) 'Dim fo1 As New IO.StreamWriter(argumente.inputfilename + ".keyout") If File.Exists(params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql") Then FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", OpenMode.Append) Else FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", FileMode.Create) End If WriteLine(1, "bulk insert dokumenttyp from '" + argumente.inputfilename + ".out" + "' with (FIELDTERMINATOR = '\t',ROWTERMINATOR = '\n', codepage='850')") 'WriteLine(1, "bulk insert zv_cold_keys from '" + argumente.inputfilename + ".keyout" + "' with (FIELDTERMINATOR = '\t',ROWTERMINATOR = '\n')") FileClose(1) Dim splits() As String Dim res As String = "" Dim delimiter As Char = vbTab While Not fi.EndOfStream s = fi.ReadLine zvcounterin = zvcounterin + 1 's = s.Replace("""", "") splits = Split(s, """,""", -1, CompareMethod.Text) res = "" splits(0) = splits(0).Replace("""", "") res = res + splits(0) + delimiter 'partnernr_inhaber nrpar00 res = res + splits(1) + delimiter 'partnernr_inhaber nrpar00 res = res + splits(2) + delimiter 'partnernr_zusteller nrparad res = res + splits(3) + delimiter 'partnername-inhaber bkpar00 res = res + splits(4) + delimiter 'partnername_zusteller bkparad res = res + splits(5) + delimiter 'referenzzeile1 nrref1 res = res + splits(6) + delimiter 'referenzzeile2 nrref2 res = res + splits(7) + delimiter 'referenzzeile2 nrref2 res = res + splits(8) + delimiter 'referenzzeile2 nrref2 res = res + splits(9) + delimiter 'referenzzeile2 nrref2 splits(10) = splits(10).Replace("""", "") res = res + splits(10) + delimiter 'referenzzeile2 nrref2 'res = res + splits(10) + delimiter 'referenzzeile2 nrref2 'res = res + splits(11) + delimiter 'referenzzeile2 nrref2 'res = res + splits(12) + delimiter 'referenzzeile2 nrref2 'res = res + splits(13) + delimiter 'referenzzeile2 nrref2 'res = res + splits(14) + delimiter 'referenzzeile2 nrref2 'res = res + splits(15) + delimiter 'referenzzeile2 nrref2 'res = res + splits(16) + delimiter 'referenzzeile2 nrref2 'If splits(17) = "True" Then splits(17) = 1 Else splits(17) = 0 'res = res + splits(17) + delimiter 'referenzzeile2 nrref2 'res = res + splits(18) + delimiter 'referenzzeile2 nrref2 'res = res + splits(19) + delimiter 'referenzzeile2 nrref2 'splits(20) = splits(20).Replace("""", "") 'res = res + splits(20) + delimiter 'referenzzeile2 nrref2 fo.WriteLine(res) zvcounter = zvcounter + 1 End While fo.Flush() fo.Close() 'fo1.Flush() 'fo1.Close() fi.Close() Console.WriteLine("Anzahl Datensätze gelesen :" & zvcounterin.ToString) Console.WriteLine("Anzahl Datensätze geschrieben:" & zvcounter.ToString) Console.WriteLine("HOST Ende:" & Now) Console.WriteLine("") 'Console.WriteLine("Press any key to continue...") 'edokacon.Close() 'Console.ReadLine() End Sub Private Sub import_EDEXBL() Dim zvcounter As Integer = 0 Dim zvcounterin As Integer = 0 Console.WriteLine("Start Doktype-Bearbeitung: " & Now) Dim s As String Dim fi As New IO.StreamReader(argumente.inputfilename, Encoding.Default) Dim fo As New IO.StreamWriter(argumente.inputfilename + ".out", False, Encoding.GetEncoding(850)) 'Dim fo1 As New IO.StreamWriter(argumente.inputfilename + ".keyout") If File.Exists(params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql") Then FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", OpenMode.Append) Else FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", FileMode.Create) End If WriteLine(1, "bulk insert dokumenttyp from '" + argumente.inputfilename + ".out" + "' with (FIELDTERMINATOR = '\t',ROWTERMINATOR = '\n', codepage='850')") 'WriteLine(1, "bulk insert zv_cold_keys from '" + argumente.inputfilename + ".keyout" + "' with (FIELDTERMINATOR = '\t',ROWTERMINATOR = '\n')") FileClose(1) Dim splits() As String Dim res As String = "" Dim delimiter As Char = vbTab While Not fi.EndOfStream s = fi.ReadLine zvcounterin = zvcounterin + 1 's = s.Replace("""", "") splits = Split(s, """,""", -1, CompareMethod.Text) res = "" splits(0) = splits(0).Replace("""", "") res = res + splits(0) + delimiter 'partnernr_inhaber nrpar00 res = res + splits(1) + delimiter 'partnernr_inhaber nrpar00 res = res + splits(2) + delimiter 'partnernr_zusteller nrparad res = res + splits(3) + delimiter 'partnername-inhaber bkpar00 res = res + splits(4) + delimiter 'partnername_zusteller bkparad res = res + splits(5) + delimiter 'referenzzeile1 nrref1 res = res + splits(6) + delimiter 'referenzzeile2 nrref2 res = res + splits(7) + delimiter 'referenzzeile2 nrref2 res = res + splits(8) + delimiter 'referenzzeile2 nrref2 res = res + splits(9) + delimiter 'referenzzeile2 nrref2 res = res + splits(10) + delimiter 'referenzzeile2 nrref2 res = res + splits(11) + delimiter 'referenzzeile2 nrref2 If splits(12) = "True" Then splits(12) = 1 Else splits(12) = 0 res = res + splits(12) + delimiter 'referenzzeile2 nrref2 res = res + splits(13) + delimiter 'referenzzeile2 nrref2 res = res + splits(14) + delimiter 'referenzzeile2 nrref2 res = res + splits(15) + delimiter 'referenzzeile2 nrref2 res = res + splits(16) + delimiter 'referenzzeile2 nrref2 splits(17) = splits(17).Replace("""", "") res = res + splits(17) + delimiter 'referenzzeile2 nrref2 'res = res + splits(18) + delimiter 'referenzzeile2 nrref2 'res = res + splits(19) + delimiter 'referenzzeile2 nrref2 'splits(20) = splits(20).Replace("""", "") 'res = res + splits(20) + delimiter 'referenzzeile2 nrref2 fo.WriteLine(res) zvcounter = zvcounter + 1 End While fo.Flush() fo.Close() 'fo1.Flush() 'fo1.Close() fi.Close() Console.WriteLine("Anzahl Datensätze gelesen :" & zvcounterin.ToString) Console.WriteLine("Anzahl Datensätze geschrieben:" & zvcounter.ToString) Console.WriteLine("HOST Ende:" & Now) Console.WriteLine("") 'Console.WriteLine("Press any key to continue...") 'edokacon.Close() 'Console.ReadLine() End Sub Private Sub import_EDEXBL1() Dim zvcounter As Integer = 0 Dim zvcounterin As Integer = 0 Console.WriteLine("Start Doktype-Bearbeitung: " & Now) Dim s As String Dim fi As New IO.StreamReader(argumente.inputfilename, Encoding.Default) Dim fo As New IO.StreamWriter(argumente.inputfilename + ".out", False, Encoding.GetEncoding(850)) 'Dim fo1 As New IO.StreamWriter(argumente.inputfilename + ".keyout") If File.Exists(params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql") Then FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", OpenMode.Append) Else FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", FileMode.Create) End If WriteLine(1, "bulk insert dokumenttyp from '" + argumente.inputfilename + ".out" + "' with (FIELDTERMINATOR = '\t',ROWTERMINATOR = '\n', codepage='850')") 'WriteLine(1, "bulk insert zv_cold_keys from '" + argumente.inputfilename + ".keyout" + "' with (FIELDTERMINATOR = '\t',ROWTERMINATOR = '\n')") FileClose(1) Dim splits() As String Dim res As String = "" Dim delimiter As Char = vbTab While Not fi.EndOfStream s = fi.ReadLine zvcounterin = zvcounterin + 1 's = s.Replace("""", "") splits = Split(s, """,""", -1, CompareMethod.Text) res = "" splits(0) = splits(0).Replace("""", "") res = res + splits(0) + delimiter 'partnernr_inhaber nrpar00 res = res + splits(1) + delimiter 'partnernr_inhaber nrpar00 res = res + splits(2) + delimiter 'partnernr_zusteller nrparad res = res + splits(3) + delimiter 'partnername-inhaber bkpar00 res = res + splits(4) + delimiter 'partnername_zusteller bkparad res = res + splits(5) + delimiter 'referenzzeile1 nrref1 res = res + splits(6) + delimiter 'referenzzeile2 nrref2 res = res + splits(7) + delimiter 'referenzzeile2 nrref2 res = res + splits(8) + delimiter 'referenzzeile2 nrref2 res = res + splits(9) + delimiter 'referenzzeile2 nrref2 res = res + splits(10) + delimiter 'referenzzeile2 nrref2 res = res + splits(11) + delimiter 'referenzzeile2 nrref2 res = res + splits(12) + delimiter 'referenzzeile2 nrref2 res = res + splits(13) + delimiter 'referenzzeile2 nrref2 res = res + splits(14) + delimiter 'referenzzeile2 nrref2 res = res + splits(15) + delimiter 'referenzzeile2 nrref2 res = res + splits(16) + delimiter 'referenzzeile2 nrref2 res = res + splits(17) + delimiter 'referenzzeile2 nrref2 res = res + splits(18) + delimiter 'referenzzeile2 nrref2 res = res + splits(19) + delimiter 'referenzzeile2 nrref2 res = res + splits(20) + delimiter 'referenzzeile2 nrref2 res = res + splits(21) + delimiter 'referenzzeile2 nrref2 res = res + splits(22) + delimiter 'referenzzeile2 nrref2 res = res + splits(23) + delimiter 'referenzzeile2 nrref2 res = res + splits(24) + delimiter 'referenzzeile2 nrref2 res = res + splits(25) + delimiter 'referenzzeile2 nrref2 res = res + splits(26) + delimiter 'referenzzeile2 nrref2 res = res + splits(27) + delimiter 'referenzzeile2 nrref2 res = res + splits(28) + delimiter 'referenzzeile2 nrref2 res = res + splits(29) + delimiter 'referenzzeile2 nrref2 res = res + splits(30) + delimiter 'referenzzeile2 nrref2 splits(31) = splits(31).Replace("""", "") res = res + splits(31) + delimiter 'referenzzeile2 nrref2 'res = res + splits(18) + delimiter 'referenzzeile2 nrref2 'res = res + splits(19) + delimiter 'referenzzeile2 nrref2 'splits(20) = splits(20).Replace("""", "") 'res = res + splits(20) + delimiter 'referenzzeile2 nrref2 fo.WriteLine(res) zvcounter = zvcounter + 1 End While fo.Flush() fo.Close() 'fo1.Flush() 'fo1.Close() fi.Close() Console.WriteLine("Anzahl Datensätze gelesen :" & zvcounterin.ToString) Console.WriteLine("Anzahl Datensätze geschrieben:" & zvcounter.ToString) Console.WriteLine("HOST Ende:" & Now) Console.WriteLine("") 'Console.WriteLine("Press any key to continue...") 'edokacon.Close() 'Console.ReadLine() End Sub Private Sub import_mehrfachscan() Dim zvcounter As Integer = 0 Dim zvcounterin As Integer = 0 Console.WriteLine("Start Doktype-Bearbeitung: " & Now) Dim s As String Dim fi As New IO.StreamReader(argumente.inputfilename, Encoding.Default) Dim fo As New IO.StreamWriter(argumente.inputfilename + ".out", False, Encoding.GetEncoding(850)) 'Dim fo1 As New IO.StreamWriter(argumente.inputfilename + ".keyout") If File.Exists(params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql") Then FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", OpenMode.Append) Else FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", FileMode.Create) End If WriteLine(1, "bulk insert dokumenttyp from '" + argumente.inputfilename + ".out" + "' with (FIELDTERMINATOR = '\t',ROWTERMINATOR = '\n', codepage='850')") 'WriteLine(1, "bulk insert zv_cold_keys from '" + argumente.inputfilename + ".keyout" + "' with (FIELDTERMINATOR = '\t',ROWTERMINATOR = '\n')") FileClose(1) Dim splits() As String Dim res As String = "" Dim delimiter As Char = vbTab While Not fi.EndOfStream s = fi.ReadLine zvcounterin = zvcounterin + 1 's = s.Replace("""", "") splits = Split(s, """,""", -1, CompareMethod.Text) res = "" splits(0) = splits(0).Replace("""", "") res = res + splits(0) + delimiter 'partnernr_inhaber nrpar00 res = res + splits(1) + delimiter 'partnernr_inhaber nrpar00 res = res + splits(2) + delimiter 'partnernr_zusteller nrparad res = res + splits(3) + delimiter 'partnername-inhaber bkpar00 res = res + splits(4) + delimiter 'partnername_zusteller bkparad res = res + splits(5) + delimiter 'referenzzeile1 nrref1 res = res + splits(6) + delimiter 'referenzzeile2 nrref2 If splits(7) = "True" Then splits(7) = 1 Else splits(7) = 0 res = res + splits(7) + delimiter 'referenzzeile2 nrref2 res = res + splits(8) + delimiter 'referenzzeile2 nrref2 res = res + splits(9) + delimiter 'referenzzeile2 nrref2 res = res + splits(10) + delimiter 'referenzzeile2 nrref2 splits(11) = splits(11).Replace("""", "") res = res + splits(11) + delimiter 'referenzzeile2 nrref2 'res = res + splits(18) + delimiter 'referenzzeile2 nrref2 'res = res + splits(19) + delimiter 'referenzzeile2 nrref2 'splits(20) = splits(20).Replace("""", "") 'res = res + splits(20) + delimiter 'referenzzeile2 nrref2 fo.WriteLine(res) zvcounter = zvcounter + 1 End While fo.Flush() fo.Close() 'fo1.Flush() 'fo1.Close() fi.Close() Console.WriteLine("Anzahl Datensätze gelesen :" & zvcounterin.ToString) Console.WriteLine("Anzahl Datensätze geschrieben:" & zvcounter.ToString) Console.WriteLine("HOST Ende:" & Now) Console.WriteLine("") 'Console.WriteLine("Press any key to continue...") 'edokacon.Close() 'Console.ReadLine() End Sub Private Sub import_dokument() Dim zvcounter As Integer = 0 Dim zvcounterin As Integer = 0 Console.WriteLine("Start Doktype-Bearbeitung: " & Now) Dim s As String Dim fi As New IO.StreamReader(argumente.inputfilename, Encoding.Default) Dim fo As New IO.StreamWriter(argumente.inputfilename + ".out", False, Encoding.GetEncoding(850)) 'Dim fo1 As New IO.StreamWriter(argumente.inputfilename + ".keyout") If File.Exists(params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql") Then FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", OpenMode.Append) Else FileOpen(1, params.TMPPath + "\" + argumente.Typ + "_Scriptfile.sql", FileMode.Create) End If WriteLine(1, "bulk insert dokumenttyp from '" + argumente.inputfilename + ".out" + "' with (FIELDTERMINATOR = '\t',ROWTERMINATOR = '\n', codepage='850')") 'WriteLine(1, "bulk insert zv_cold_keys from '" + argumente.inputfilename + ".keyout" + "' with (FIELDTERMINATOR = '\t',ROWTERMINATOR = '\n')") FileClose(1) Dim splits() As String Dim res As String = "" Dim delimiter As Char = vbTab While Not fi.EndOfStream s = fi.ReadLine zvcounterin = zvcounterin + 1 's = s.Replace("""", "") splits = Split(s, """,""", -1, CompareMethod.Text) res = "" splits(0) = splits(0).Replace("""", "") res = res + splits(0) + delimiter 'partnernr_inhaber nrpar00 res = res + splits(1) + delimiter 'partnernr_inhaber nrpar00 If splits(2) = "True" Then splits(2) = 1 Else splits(2) = 0 res = res + splits(2) + delimiter 'partnernr_zusteller nrparad res = res + splits(3) + delimiter 'partnername-inhaber bkpar00 res = res + splits(4) + delimiter 'partnername_zusteller bkparad res = res + splits(5) + delimiter 'referenzzeile1 nrref1 splits(6) = splits(6).Replace("""", "") res = res + splits(6) + delimiter 'referenzzeile2 nrref2 'res = res + splits(18) + delimiter 'referenzzeile2 nrref2 'res = res + splits(19) + delimiter 'referenzzeile2 nrref2 'splits(20) = splits(20).Replace("""", "") 'res = res + splits(20) + delimiter 'referenzzeile2 nrref2 fo.WriteLine(res) zvcounter = zvcounter + 1 End While fo.Flush() fo.Close() 'fo1.Flush() 'fo1.Close() fi.Close() Console.WriteLine("Anzahl Datensätze gelesen :" & zvcounterin.ToString) Console.WriteLine("Anzahl Datensätze geschrieben:" & zvcounter.ToString) Console.WriteLine("HOST Ende:" & Now) Console.WriteLine("") 'Console.WriteLine("Press any key to continue...") 'edokacon.Close() 'Console.ReadLine() End Sub End Module