Imports System.Data.SqlClient Module cATILLA_Speditionsbuch Dim SPED As New List(Of cSpeditionsbuch) Sub Main() LOAD(CDate("01." & Now.Month & "." & Now.Year)) System.Console.WriteLine(SPED.Count) For Each s In SPED 'INSERT(s) Next Threading.Thread.Sleep(3000) End Sub Public Sub LOAD(datum As Date) Try Using conn As SqlConnection = GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("SELECT * FROM Speditionsbuch WHERE FilialenNr IN (4801,4802) and SB_Zeitstempel > '" & datum.ToShortDateString & " 00:00:00' and Bar=0 ", conn) Dim dr = cmd.ExecuteReader() While dr.Read Dim s As New cSpeditionsbuch s.FilialenNr = checkNullInteger(dr.Item("FilialenNr")) s.AbfertigungsNr = checkNullInteger(dr.Item("AbfertigungsNr")) s.UnterNr = checkNullInteger(dr.Item("UnterNr")) s.Abfertigungsdatum = checkNullDateNothing(dr.Item("Abfertigungsdatum")) s.Bar = checkNullBool(dr.Item("Bar")) s.Fakturiert = checkNullBool(dr.Item("Fakturiert")) s.BelegNr = checkNullStr(dr.Item("BelegNr")) s.ErfassungsNr = checkNullStr(dr.Item("ErfassungsNr")) s.LKW_Kennzeichen = checkNullStr(dr.Item("LKW Kennzeichen")) ' s.AvisiererKundenNr = checkNullReturnValue(dr.Item("AvisiererKundenNr"), Nothing) ' s.Avisierer = checkNullStr(dr.Item("Avisierer")) s.AbsenderKundenNr = checkNullReturnValue(dr.Item("AbsenderKundenNr"), Nothing) s.Absender = checkNullStr(dr.Item("Absender")) s.AbsenderOffertenNr = checkNullInteger(dr.Item("AbsenderOffertenNr")) s.EmpfängerKundenNr = checkNullReturnValue(dr.Item("EmpfängerKundenNr"), Nothing) s.Empfänger = checkNullStr(dr.Item("Empfänger")) s.EmpfängerOffertenNr = checkNullInteger(dr.Item("EmpfängerOffertenNr")) s.VermittlerKundenNr = checkNullReturnValue(dr.Item("VermittlerKundenNr"), Nothing) s.Vermittler = checkNullStr(dr.Item("Vermittler")) s.VermittlerOffertenNr = checkNullInteger(dr.Item("VermittlerOffertenNr")) s.FrachtführerKundenNr = checkNullReturnValue(dr.Item("FrachtführerKundenNr"), Nothing) s.Frachtführer = checkNullStr(dr.Item("Frachtführer")) s.AnzahlZA = checkNullIntegerZero(dr.Item("AnzahlZA")) s.AnzahlZAFremd = checkNullIntegerZero(dr.Item("AnzahlZAFremd")) s.AnzahlZnV = checkNullIntegerZero(dr.Item("AnzahlZnV")) s.AnzahlZnVFremd = checkNullIntegerZero(dr.Item("AnzahlZnVFremd")) s.AnzahlT1 = checkNullIntegerZero(dr.Item("AnzahlT1")) s.AnzahlT2 = checkNullIntegerZero(dr.Item("AnzahlT2")) s.AnzahlAE = checkNullStr(dr.Item("AnzahlAE")) s.AnzahlCarnetTIR = checkNullIntegerZero(dr.Item("AnzahlCarnetTIR")) s.AnzahlBarvorlagen = checkNullIntegerZero(dr.Item("AnzahlBarvorlagen")) s.AnzahlSonstiges = checkNullIntegerZero(dr.Item("AnzahlSonstiges")) s.AnzahlGrenzgebühren = checkNullIntegerZero(dr.Item("AnzahlGrenzgebühren")) s.AvisUhrzeit = checkNullStr(dr.Item("AvisUhrzeit")) s.Vermerk = checkNullStr(dr.Item("Vermerk")) s.Bemerkungen = checkNullStr(dr.Item("Bemerkungen")) s.Währungsschlüssel = checkNullInteger(dr.Item("Währungsschlüssel")) s.Rechnungsbetrag = checkNulDbl(dr.Item("Rechnungsbetrag")) s.Umrechnungskurs = checkNullInteger(dr.Item("Umrechnungskurs")) s.Packstücke = checkNullStr(dr.Item("Packstücke")) s.Rohmasse = checkNullInteger(dr.Item("Rohmasse")) s.Zahlungsaufschub = checkNullStr(dr.Item("Zahlungsaufschub")) s.Löschen = checkNullDateNothing(dr.Item("Löschen")) s.Abfertigungsart = checkNullInteger(dr.Item("Abfertigungsart")) s.Abfertigungsanzahl = checkNullIntegerZero(dr.Item("Abfertigungsanzahl")) s.Barzahlungsbetrag = checkNulDbl(dr.Item("Barzahlungsbetrag")) s.Sachbearbeiter = checkNullStr(dr.Item("Sachbearbeiter")) s.Personalnummer = checkNullInteger(dr.Item("Personalnummer")) ' s.PersonalnummerQS = checkNullInteger(dr.Item("PersonalnummerQS")) s.AtlasBezNrEZA = checkNullStr(dr.Item("AtlasBezNrEZA")) s.AtlasBezNrNCTS = checkNullStr(dr.Item("AtlasBezNrNCTS")) s.Versendungsland = checkNullStr(dr.Item("Versendungsland")) s.SB_CMR = checkNullBool(dr.Item("SB_CMR")) s.SB_CMRDatum = checkNullDateNothing(dr.Item("SB_CMRDatum")) s.veoerz_basbtg = checkNulDbl(dr.Item("veoerz_basbtg")) s.Zucker_MRN_Nr = checkNullStr(dr.Item("Zucker_MRN_Nr")) s.Zucker_MRN_Datum = checkNullDateNothing(dr.Item("Zucker_MRN_Datum")) s.Zucker_Aufschub = checkNullStr(dr.Item("Zucker_Aufschub")) s.Zollsystem = checkNullStr(dr.Item("Zollsystem")) s.Bestimmungszollstelle = checkNullStr(dr.Item("Bestimmungszollstelle")) s.Bürgschaft = checkNullStr(dr.Item("Bürgschaft")) s.Sicherheitsbetrag = checkNulDbl(dr.Item("Sicherheitsbetrag")) s.SgutKompl = checkNullStr(dr.Item("SgutKompl")) s.Bestimmungsland = checkNullStr(dr.Item("Bestimmungsland")) s.EuFiskalEmpfänger = checkNullStr(dr.Item("EuFiskalEmpfänger")) s.QKN = checkNullStr(dr.Item("QKN")) s.EndempfängerKundenNr = checkNullReturnValue(dr.Item("EndempfängerKundenNr"), Nothing) s.Endempfänger = checkNullStr(dr.Item("Endempfänger")) s.SB_Zeitstempel = checkNullDateNothing(dr.Item("SB_Zeitstempel")) SPED.Add(s) End While dr.Close() End Using End Using 'Return Nothing Catch ex As Exception MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace) End Try ' Return Nothing End Sub Public Function GetNewOpenConnectionFMZOLL(Optional pooling As Boolean = True) As SqlConnection Dim cn As New SqlConnection() cn.ConnectionString = "Data Source=192.168.0.91\SQLFMZOLL;Initial Catalog=VERAG;Integrated Security=false;User ID=sa;Password=BmWr501956;pooling=false" cn.Open() Return cn End Function Public Function GetNewOpenConnectionATILLA(Optional pooling As Boolean = True) As SqlConnection Dim cn As New SqlConnection() cn.ConnectionString = "Data Source=D\SQLFMZOLL;Initial Catalog=VERAG;Integrated Security=false;User ID=sa;Password=BmWr501956;pooling=false" cn.Open() Return cn End Function Sub INSERT(s As cSpeditionsbuch) Dim list As List(Of cSQLVariable) Dim sql = " INSERT INTO [Speditionsbuch] ([FilialenNr],[AbfertigungsNr],[UnterNr],[Abfertigungsdatum],[Bar],[Fakturiert],[BelegNr],[ErfassungsNr],[LKW Kennzeichen],[AbsenderKundenNr],[Absender],[AbsenderOffertenNr],[EmpfängerKundenNr],[Empfänger],[EmpfängerOffertenNr],[VermittlerKundenNr],[Vermittler],[VermittlerOffertenNr],[FrachtführerKundenNr],[Frachtführer],[AnzahlZA],[AnzahlZAFremd],[AnzahlZnV],[AnzahlZnVFremd],[AnzahlT1],[AnzahlT2],[AnzahlAE],[AnzahlCarnetTIR],[AnzahlBarvorlagen],[AnzahlSonstiges],[AnzahlGrenzgebühren],[AvisUhrzeit],[Vermerk],[Bemerkungen],[Währungsschlüssel],[Rechnungsbetrag],[Umrechnungskurs],[Packstücke],[Rohmasse],[Zahlungsaufschub],[Löschen],[Abfertigungsart],[Abfertigungsanzahl],[Barzahlungsbetrag],[Sachbearbeiter],[Personalnummer],[AtlasBezNrEZA],[AtlasBezNrNCTS],[Versendungsland],[SB_CMR],[SB_CMRDatum],[veoerz_basbtg],[Zucker_MRN_Nr],[Zucker_MRN_Datum],[Zucker_Aufschub],[Zollsystem],[Bestimmungszollstelle],[Bürgschaft],[Sicherheitsbetrag],[SgutKompl]) " & " VALUES(@FilialenNr,@AbfertigungsNr,@UnterNr,@Abfertigungsdatum,@Bar,@Fakturiert,@BelegNr,@ErfassungsNr,@LKW Kennzeichen,@AbsenderKundenNr,@Absender,@AbsenderOffertenNr,@EmpfängerKundenNr,@Empfänger,@EmpfängerOffertenNr,@VermittlerKundenNr,@Vermittler,@VermittlerOffertenNr,@FrachtführerKundenNr,@Frachtführer,@AnzahlZA,@AnzahlZAFremd,@AnzahlZnV,@AnzahlZnVFremd,@AnzahlT1,@AnzahlT2,@AnzahlAE,@AnzahlCarnetTIR,@AnzahlBarvorlagen,@AnzahlSonstiges,@AnzahlGrenzgebühren,@AvisUhrzeit,@Vermerk,@Bemerkungen,@Währungsschlüssel,@Rechnungsbetrag,@Umrechnungskurs,@Packstücke,@Rohmasse,@Zahlungsaufschub,@Löschen,@Abfertigungsart,@Abfertigungsanzahl,@Barzahlungsbetrag,@Sachbearbeiter,@Personalnummer,@AtlasBezNrEZA,@AtlasBezNrNCTS,@Versendungsland,@SB_CMR,@SB_CMRDatum,@veoerz_basbtg,@Zucker_MRN_Nr,@Zucker_MRN_Datum,@Zucker_Aufschub,@Zollsystem,@Bestimmungszollstelle,@Bürgschaft,@Sicherheitsbetrag,@SgutKompl) " Try Using conn As SqlConnection = GetNewOpenConnectionATILLA() Using cmd As New SqlCommand(sql, conn) ' Dim dr = cmd.ExecuteReader() cmd.Parameters.AddWithValue("@FilialenNr", s.FilialenNr) cmd.Parameters.AddWithValue("@AbfertigungsNr", s.AbfertigungsNr) cmd.Parameters.AddWithValue("@UnterNr", s.UnterNr) cmd.Parameters.AddWithValue("@Abfertigungsdatum", s.Abfertigungsdatum) cmd.Parameters.AddWithValue("@Bar", s.Bar) cmd.Parameters.AddWithValue("@Fakturiert", s.Fakturiert) cmd.Parameters.AddWithValue("@BelegNr", s.BelegNr) cmd.Parameters.AddWithValue("@ErfassungsNr", s.ErfassungsNr) cmd.Parameters.AddWithValue("@LKW Kennzeichen", s.LKW_Kennzeichen) cmd.Parameters.AddWithValue("@AbsenderKundenNr", s.AbsenderKundenNr) cmd.Parameters.AddWithValue("@Absender", s.Absender) cmd.Parameters.AddWithValue("@AbsenderOffertenNr", s.AbsenderOffertenNr) cmd.Parameters.AddWithValue("@EmpfängerKundenNr", s.EmpfängerKundenNr) cmd.Parameters.AddWithValue("@Empfänger", s.Empfänger) cmd.Parameters.AddWithValue("@EmpfängerOffertenNr", s.EmpfängerOffertenNr) cmd.Parameters.AddWithValue("@VermittlerKundenNr", s.VermittlerKundenNr) cmd.Parameters.AddWithValue("@Vermittler", s.Vermittler) cmd.Parameters.AddWithValue("@VermittlerOffertenNr", s.VermittlerOffertenNr) cmd.Parameters.AddWithValue("@FrachtführerKundenNr", s.FrachtführerKundenNr) cmd.Parameters.AddWithValue("@Frachtführer", s.Frachtführer) cmd.Parameters.AddWithValue("@AnzahlZA", s.AnzahlZA) cmd.Parameters.AddWithValue("@AnzahlZAFremd", s.AnzahlZAFremd) cmd.Parameters.AddWithValue("@AnzahlZnV", s.AnzahlZnV) cmd.Parameters.AddWithValue("@AnzahlZnVFremd", s.AnzahlZnVFremd) cmd.Parameters.AddWithValue("@AnzahlT1", s.AnzahlT1) cmd.Parameters.AddWithValue("@AnzahlT2", s.AnzahlT2) cmd.Parameters.AddWithValue("@AnzahlAE", s.AnzahlAE) cmd.Parameters.AddWithValue("@AnzahlCarnetTIR", s.AnzahlCarnetTIR) cmd.Parameters.AddWithValue("@AnzahlBarvorlagen", s.AnzahlBarvorlagen) cmd.Parameters.AddWithValue("@AnzahlSonstiges", s.AnzahlSonstiges) cmd.Parameters.AddWithValue("@AnzahlGrenzgebühren", s.AnzahlGrenzgebühren) cmd.Parameters.AddWithValue("@AvisUhrzeit", s.AvisUhrzeit) cmd.Parameters.AddWithValue("@Vermerk", s.Vermerk) cmd.Parameters.AddWithValue("@Bemerkungen", s.Bemerkungen) cmd.Parameters.AddWithValue("@Währungsschlüssel", s.Währungsschlüssel) cmd.Parameters.AddWithValue("@Rechnungsbetrag", s.Rechnungsbetrag) cmd.Parameters.AddWithValue("@Umrechnungskurs", s.Umrechnungskurs) cmd.Parameters.AddWithValue("@Packstücke", s.Packstücke) cmd.Parameters.AddWithValue("@Rohmasse", s.Rohmasse) cmd.Parameters.AddWithValue("@Zahlungsaufschub", s.Zahlungsaufschub) cmd.Parameters.AddWithValue("@Löschen", s.Löschen) cmd.Parameters.AddWithValue("@Abfertigungsart", s.Abfertigungsart) cmd.Parameters.AddWithValue("@Abfertigungsanzahl", s.Abfertigungsanzahl) cmd.Parameters.AddWithValue("@Barzahlungsbetrag", s.Barzahlungsbetrag) cmd.Parameters.AddWithValue("@Sachbearbeiter", s.Sachbearbeiter) cmd.Parameters.AddWithValue("@Personalnummer", s.Personalnummer) cmd.Parameters.AddWithValue("@AtlasBezNrEZA", s.AtlasBezNrEZA) cmd.Parameters.AddWithValue("@AtlasBezNrNCTS", s.AtlasBezNrNCTS) cmd.Parameters.AddWithValue("@Versendungsland", s.Versendungsland) cmd.Parameters.AddWithValue("@SB_CMR", s.SB_CMR) cmd.Parameters.AddWithValue("@SB_CMRDatum", s.SB_CMRDatum) cmd.Parameters.AddWithValue("@veoerz_basbtg", s.veoerz_basbtg) cmd.Parameters.AddWithValue("@Zucker_MRN_Nr", s.Zucker_MRN_Nr) cmd.Parameters.AddWithValue("@Zucker_MRN_Datum", s.Zucker_MRN_Datum) cmd.Parameters.AddWithValue("@Zucker_Aufschub", s.Zucker_Aufschub) cmd.Parameters.AddWithValue("@Zollsystem", s.Zollsystem) cmd.Parameters.AddWithValue("@Bestimmungszollstelle", s.Bestimmungszollstelle) cmd.Parameters.AddWithValue("@Bürgschaft", s.Bürgschaft) cmd.Parameters.AddWithValue("@Sicherheitsbetrag", s.Sicherheitsbetrag) cmd.Parameters.AddWithValue("@SgutKompl", s.SgutKompl) cmd.ExecuteNonQuery() End Using End Using 'Return Nothing Catch ex As Exception MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace) End Try End Sub Public Function checkNullStr(ByVal o As Object) As String If o IsNot Nothing And o IsNot DBNull.Value Then Return CStr(o) Return "" End Function Public Function checkNullInteger(ByVal o As Object) As Integer If o IsNot Nothing And o IsNot DBNull.Value Then Return CInt(o) Return -1 End Function Public Function checkNullReturnValue(ByVal o As Object, ByVal returnValue As Object) As Object If o IsNot Nothing And o IsNot DBNull.Value Then Return (o) Return returnValue End Function Public Function checkNullIntegerZero(ByVal o As Object) As Integer If o IsNot Nothing And o IsNot DBNull.Value Then Return CInt(o) Return 0 End Function Public Function checkNulDbl(ByVal o As Object) As Double If o IsNot Nothing And o IsNot DBNull.Value Then Return CDbl(o) Return -1 End Function Public Function checkNullBool(ByVal o As Object) As Boolean If o Is Nothing Or o Is DBNull.Value Then Return 0 Try Return CBool(o) Catch ex As Exception End Try Return 0 End Function Public Function checkNullDateNothing(ByVal o As Object) As Object If o Is DBNull.Value Then Return Nothing Else Return CDate(o) End If End Function End Module