Imports System.Data Imports System.Data.OleDb Imports System.IO Imports System.Data.SqlClient Public Class cSqlDb Public Shared Function GetSDLConnectionString() As String Return VERAG_PROG_ALLGEMEIN.SQL.GetSDLConnectionString() End Function Public Shared Function GetADMINConnectionString() As String Return VERAG_PROG_ALLGEMEIN.SQL.GetADMINConnectionString End Function Public Shared Function GetFMZOLLConnectionString() As String Return VERAG_PROG_ALLGEMEIN.SQL.GetFMZOLLConnectionString End Function Public Shared Function GetFDConnectionString() As String Return VERAG_PROG_ALLGEMEIN.SQL.GetFDConnectionString End Function Public Shared Function GetATLASConnectionString() As String Return VERAG_PROG_ALLGEMEIN.SQL.GetATLASConnectionString End Function Public Shared Function GetATLAS_SBGConnectionString() As String Return VERAG_PROG_ALLGEMEIN.SQL.GetATLAS_SBGConnectionString End Function Public Shared Function GetEZOLLConnectionString() As String Return VERAG_PROG_ALLGEMEIN.SQL.GetEZOLLConnectionString End Function Public Shared Function GetAVISOConnectionString() As String Return VERAG_PROG_ALLGEMEIN.SQL.GetAVISOConnectionString End Function Public Shared Function GetNewOpenConnection(Optional pooling As Boolean = True) As SqlConnection Dim cn As New SqlConnection() 'cn.ConnectionString = My.Resources.connStringSDL_DEV ' IMMER DIE AKTUELLE CONNECTION IN MY.SETTINGS ÄNDERN!!! --> WG. BINDING cn.ConnectionString = GetSDLConnectionString() & IIf(pooling, "", ";pooling=false") cn.Open() Return cn End Function Public Shared Function GetNewOpenConnectionLogin() As SqlConnection Dim cn As New SqlConnection() cn.ConnectionString = GetADMINConnectionString() cn.Open() Return cn End Function Public Shared Function GetNewOpenConnectionFMZOLL(Optional pooling As Boolean = True) As SqlConnection Dim cn As New SqlConnection() cn.ConnectionString = GetFMZOLLConnectionString() & IIf(pooling, "", ";pooling=false") cn.Open() Return cn End Function Public Shared Function GetNewOpenConnectionATLAS() As SqlConnection Dim cn As New SqlConnection() cn.ConnectionString = GetATLASConnectionString() cn.Open() Return cn End Function Public Shared Function GetNewOpenConnectionATLAS_SBG() As SqlConnection Dim cn As New SqlConnection() cn.ConnectionString = GetATLAS_SBGConnectionString() cn.Open() Return cn End Function Public Shared Function GetNewOpenConnectionEZOLL() As SqlConnection Dim cn As New SqlConnection() cn.ConnectionString = GetEZOLLConnectionString() cn.Open() Return cn End Function Public Shared Function GetNewOpenConnectionFD___OLD() As SqlConnection Dim cn As New SqlConnection() cn.ConnectionString = GetFDConnectionString() cn.Open() Return cn End Function Public Shared Function GetNewOpenConnectionAVISO() As SqlConnection Dim cn As New SqlConnection() cn.ConnectionString = GetAVISOConnectionString() cn.Open() Return cn End Function Public Shared Function GetNewOpenConnectionFMZOLLREAL() As SqlConnection Dim cn As New SqlConnection() cn.ConnectionString = VERAG_PROG_ALLGEMEIN.My.MySettings.Default.FMZOLL_PRODConnectionString cn.Open() Return cn End Function Public Shared 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 Shared 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 Shared 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 Shared 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 Shared 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 Shared Function checkNullBoolCheckState(ByVal o As Object) As Integer If o IsNot Nothing And o IsNot DBNull.Value Then Return 2 Try If o = True Then Return 1 If o = False Then Return 0 Catch ex As Exception End Try Return 2 End Function Public Shared 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 Shared Function checkNullDate(ByVal o As Object) As Date If o IsNot Nothing And o IsNot DBNull.Value Then Return CDate(o) Return Now End Function Public Shared Function checkNullDateNothing(ByVal o As Object) As Object If o Is DBNull.Value Then Return Nothing Else Return CDate(o) End If End Function Public Shared Function setNullDate(ByVal o As String) As Object Try If IsDate(o) Then Return CDate(o) Catch ex As Exception End Try Return DBNull.Value End Function Public Shared Function setNullInteger(ByVal o As Integer) As Object Try If IsNumeric(o) AndAlso o >= 0 Then Return CInt(o) Catch ex As Exception End Try Return DBNull.Value End Function Public Shared Function setNullBoolean(ByVal o As Integer) As Object Try If o = 0 Then Return False If o = 1 Then Return True Catch ex As Exception End Try Return DBNull.Value End Function End Class Public Class cOptionenDAL Public atr_id_insert As Integer = -1 Public Function getAktuelleVersion() As String Dim sql As String = "SELECT prog_aktuelleVersion FROM tblProgramme WHERE prog_codename=@codename" Dim dr As SqlDataReader Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionLogin() Using cmd As New SqlCommand(sql, conn) cmd.Parameters.AddWithValue("@codename", "SDL") dr = cmd.ExecuteReader() Try If dr.Read Then Return CStr(dr.Item("prog_aktuelleVersion")) Catch ex As Exception MsgBox(System.Reflection.MethodInfo.GetCurrentMethod.Name & ": Fehler mit der Datenbankverbindung:", "Datenbankfehler") Finally dr.Close() End Try End Using End Using Return "0" End Function Public Function checkLogin(ByVal user As String, ByVal pwd As String, progName As String, Optional firma As String = "VERAG") As Boolean If user = "" Then Return False 'falls ID mitgegeben, dann diese laden, ansonsten den anderen Wert suchen 'Dim sql As String = "SELECT mit_vname,mit_nname,mit_berechtigung FROM tblUser where mit_username=@mit_username COLLATE Latin1_General_CS_AS and mit_pwd=@mit_pwd COLLATE Latin1_General_CS_AS " ' Dim sql As String = "SELECT mit_id,mit_vname,mit_nname,ber_sicherheitsstufe,[mit_username],[mit_firmaFMZoll] FROM tblMitarbeiter,tblBerProg,tblBerechtigungen where mit_username=@mit_username and mit_pwd=@mit_pwd COLLATE Latin1_General_CS_AS AND bepr_programm=@bepr_programm AND bepr_userId=mit_id AND ber_id=bepr_berId" Dim sql As String = "SELECT mit_id,mit_vname,mit_nname,[mit_username],[mit_firmaFMZoll],mit_TESTonly FROM tblMitarbeiter,tblBerProg where mit_username=@mit_username and mit_pwd=@mit_pwd COLLATE Latin1_General_CS_AS AND bepr_programm=@bepr_programm AND bepr_userId=mit_id " Dim dr As SqlDataReader Try Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionLogin() Using cmd As New SqlCommand(sql, conn) cmd.Parameters.AddWithValue("@mit_username", user) cmd.Parameters.AddWithValue("@mit_pwd", pwd) cmd.Parameters.AddWithValue("@bepr_programm", progName) dr = cmd.ExecuteReader() If dr.Read Then ' VERAG_PROG_ALLGEMEIN.cAllgemein.USRBER = dr.Item("ber_sicherheitsstufe") VERAG_PROG_ALLGEMEIN.cAllgemein.USRID = dr.Item("mit_id") ' VERAG_PROG_ALLGEMEIN.cAllgemein.USR_VNAME = dr.Item("mit_vname") 'VERAG_PROG_ALLGEMEIN.cAllgemein.USR_NNAME = dr.Item("mit_nname") ' VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME = dr.Item("mit_vname") & " " & dr.Item("mit_nname") VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME = dr.Item("mit_username") If dr.Item("mit_firmaFMZoll") IsNot DBNull.Value Then VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA_ID = dr.Item("mit_firmaFMZoll") VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA_NAME = getBezById(VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA_ID) End If If dr.Item("mit_TESTonly") And Not VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then MsgBox("Benutzer ist nur für das Testsystem freigeschaltet!") VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = True 'umschalten auf das TESTSYSTEM End If VERAG_PROG_ALLGEMEIN.cAllgemein.LOAD_BER() VERAG_PROG_ALLGEMEIN.cAllgemein.LOAD_DATA() VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = firma Return True End If End Using End Using dr.Close() Catch ex As Exception MsgBox(ex.Message) 'MsgBox(System.Reflection.MethodInfo.GetCurrentMethod.Name & ": Fehler mit der Datenbankverbindung.", "Datenbankfehler") Return False End Try Return False End Function Public Function getBezById(id) As String Dim sql As String = "SELECT [Firma_Bez] FROM [tblFirma] WHERE [Firma_ID]=@id" Dim dr As SqlDataReader Try Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand(sql, conn) cmd.Parameters.AddWithValue("@id", id) dr = cmd.ExecuteReader() If dr.Read Then Return dr.Item(0) End If End Using End Using dr.Close() Catch ex As Exception MsgBox(System.Reflection.MethodInfo.GetCurrentMethod.Name & ": Fehler mit der Datenbankverbindung.", "Datenbankfehler") End Try Return "" End Function Public Function getBerechtigungen(mit_id) As List(Of cBerechtigungen) Dim sql As String = "SELECT ber_id,ber_name,ber_allowed,ber_sicherheitsstufe FROM tblMitarbeiter,tblBerProg,tblBerechtigungen where mit_id =@mit_id AND bepr_programm=@bepr_programm AND bepr_userId=mit_id AND ber_id=bepr_berId" Dim data As New List(Of cBerechtigungen) Dim dr As SqlDataReader Try Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionLogin() Using cmd As New SqlCommand(sql, conn) cmd.Parameters.AddWithValue("@mit_id", mit_id) cmd.Parameters.AddWithValue("@bepr_programm", "SDL") dr = cmd.ExecuteReader() While dr.Read Dim d As New cBerechtigungen d.id = dr.Item("ber_id") d.text = dr.Item("ber_name") If Not IsDBNull(dr.Item("ber_sicherheitsstufe")) Then d.stufe = dr.Item("ber_sicherheitsstufe") If Not IsDBNull(dr.Item("ber_allowed")) Then d.allowed = dr.Item("ber_allowed") data.Add(d) End While End Using End Using dr.Close() Catch ex As Exception MsgBox(System.Reflection.MethodInfo.GetCurrentMethod.Name & ": Fehler mit der Datenbankverbindun.", "Datenbankfehler") Return Nothing End Try Return data End Function Public Function getMaxPosNrIncCCrement(FilialeNr As Integer, year As Integer) As Integer Dim newMaxwert = CInt(year.ToString.Substring(2, 2) & "000000") '16000000 Dim conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Dim sql As String = " begin tran" & " if exists (select * from tblPosNr with (updlock,serializable) WHERE FilialeNr = @FilialeNr AND Jahr = @Jahr) " & " begin " & " UPDATE tblPosNr " & " SET wert=(select MAX(wert) FROM tblPosNr )+1 " & " WHERE FilialeNr = @FilialeNr AND Jahr = @Jahr " & " End " & " Else " & " begin " & " INSERT INTO tblPosNr " & " (wert,FilialeNr,Jahr) " & " VALUES(@newMaxwert, @FilialeNr,@Jahr) " & " End " & " commit tran " & " SELECT isnull(wert,-1) FROM tblPosNr WHERE FilialeNr = @FilialeNr AND Jahr = @Jahr" Dim dr As SqlDataReader Using cmd As New SqlCommand(sql, conn) cmd.Parameters.AddWithValue("@FilialeNr", FilialeNr) cmd.Parameters.AddWithValue("@Jahr", year) cmd.Parameters.AddWithValue("@newMaxwert", newMaxwert) Try dr = cmd.ExecuteReader() If dr.Read Then Return CInt(dr.Item(0)) Catch ex As Exception MsgBox(System.Reflection.MethodInfo.GetCurrentMethod.Name & ": Fehler mit der Datenbankverbindun.", "Datenbankfehler") Finally dr.Close() End Try End Using ' conn.Close() Return -1 End Function Public Function getMaxPosNr(FilialeNr As Integer, year As Integer) As Integer Dim conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Dim sql As String = " SELECT isnull(wert,-1) FROM tblPosNr WHERE FilialeNr = @FilialeNr AND Jahr = @Jahr" Dim dr As SqlDataReader Using cmd As New SqlCommand(sql, conn) cmd.Parameters.AddWithValue("@FilialeNr", FilialeNr) cmd.Parameters.AddWithValue("@Jahr", year) Try dr = cmd.ExecuteReader() If dr.Read Then Return CInt(dr.Item(0)) Catch ex As Exception MsgBox(System.Reflection.MethodInfo.GetCurrentMethod.Name & ": Fehler mit der Datenbankverbindun.", "Datenbankfehler") Finally dr.Close() End Try End Using Return -1 End Function End Class Public Class SQLZoll Public Function getArtikelByIDs(ByVal IDs As List(Of Integer)) As List(Of cArtikel) Try Dim in_str = "" For Each i In IDs in_str &= i & "," Next If in_str.EndsWith(",") Then in_str = in_str.Substring(0, in_str.Length - 1) Dim daten As New List(Of cArtikel) Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("SELECT * FROM tblZollArtikel WHERE [zollArt_id] IN (" & in_str & ")", conn) Dim dr = cmd.ExecuteReader() While dr.Read Dim d As New cArtikel d.zollArt_id = cSqlDb.checkNullInteger(dr.Item("zollArt_id")) d.Kundennummer = cSqlDb.checkNullInteger(dr.Item("KundenNr")) d.Teilsatzschlüssel = cSqlDb.checkNullStr(dr.Item("zollArt_Teilsatzschluessel")) d.Verarbeitungskennzeichen = cSqlDb.checkNullStr(dr.Item("zollArt_Verarbeitungskennzeichen")) d.Artikelnummer = cSqlDb.checkNullStr(dr.Item("zollArt_Artikelnummer")) d.Dynamische_Ergänzung_1 = cSqlDb.checkNullStr(dr.Item("zollArt_Dynamische_Ergaenzung_1")) d.Dynamische_Ergänzung_1 = cSqlDb.checkNullStr(dr.Item("zollArt_Dynamische_Ergaenzung_2")) d.Warencodenummer = cSqlDb.checkNullStr(dr.Item("zollArt_Warencodenummer")) d.Zusatzcode_1 = cSqlDb.checkNullStr(dr.Item("zollArt_Zusatzcode_1")) d.Zusatzcode_2 = cSqlDb.checkNullStr(dr.Item("zollArt_Zusatzcode_2")) d.Kennzeichen_Gültig = cSqlDb.checkNullStr(dr.Item("zollArt_Kennzeichen_Gueltig")) d.Kurzbezeichnung = cSqlDb.checkNullStr(dr.Item("zollArt_Kurzbezeichnung")) d.Warenbeschreibung = cSqlDb.checkNullStr(dr.Item("zollArt_Warenbeschreibung")) d.Statistische_Maßeinheit = cSqlDb.checkNullStr(dr.Item("zollArt_Statistische_Maßeinheit")) d.Statistische_Maßeinheit_Qualifikator = cSqlDb.checkNullStr(dr.Item("zollArt_Statistische_Maßeinheit_Qualifikator")) d.Besondere_Maßeinheit = cSqlDb.checkNullStr(dr.Item("zollArt_Besondere_Maßeinheit")) d.Besondere_Maßeinheit_Qualifikator = cSqlDb.checkNullStr(dr.Item("zollArt_Besondere_Maßeinheit_Qualifikator")) d.Gewicht = cSqlDb.checkNullStr(dr.Item("zollArt_Gewicht")) d.Menge = cSqlDb.checkNullStr(dr.Item("zollArt_Menge")) d.status = cSqlDb.checkNullStr(dr.Item("zollArt_Status")) daten.Add(d) End While dr.Close() End Using End Using Return daten Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function insertArtikel(ByVal artikel As cArtikel) As Integer Dim sql As String = " begin tran" & " if exists (select * from tblZollArtikel with (updlock,serializable) where KundenNr = @KundenNr AND zollArt_Artikelnummer=@zollArt_Artikelnummer AND zollArt_Warencodenummer=@zollArt_Warencodenummer ) " & " begin " & "DELETE TOP (1) FROM tblZollArtikel WHERE KundenNr = @KundenNr AND zollArt_Artikelnummer=@zollArt_Artikelnummer AND zollArt_Warencodenummer=@zollArt_Warencodenummer " & "INSERT INTO tblZollArtikel " & " (KundenNr,zollArt_Artikelnummer,zollArt_Dynamische_Ergaenzung_1,zollArt_Dynamische_Ergaenzung_2,zollArt_Warencodenummer,zollArt_Kurzbezeichnung,zollArt_Warenbeschreibung,zollArt_Status,Erfassungsdatum,Sachbearbeiter) " & " VALUES(@KundenNr,@zollArt_Artikelnummer,@zollArt_Dynamische_Ergaenzung_1,@zollArt_Dynamische_Ergaenzung_2,@zollArt_Warencodenummer,@zollArt_Kurzbezeichnung,@zollArt_Warenbeschreibung,@zollArt_Status,@Erfassungsdatum,@Sachbearbeiter) " & " End " & " Else " & " begin " & "INSERT INTO tblZollArtikel " & " (KundenNr,zollArt_Artikelnummer,zollArt_Dynamische_Ergaenzung_1,zollArt_Dynamische_Ergaenzung_2,zollArt_Warencodenummer,zollArt_Kurzbezeichnung,zollArt_Warenbeschreibung,zollArt_Status,Erfassungsdatum,Sachbearbeiter) " & " VALUES(@KundenNr,@zollArt_Artikelnummer,@zollArt_Dynamische_Ergaenzung_1,@zollArt_Dynamische_Ergaenzung_2,@zollArt_Warencodenummer,@zollArt_Kurzbezeichnung,@zollArt_Warenbeschreibung,@zollArt_Status,@Erfassungsdatum,@Sachbearbeiter) " & " End " & " commit tran " Try Dim daten As New List(Of cOffert) Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand(sql, conn) cmd.Parameters.AddWithValue("@KundenNr", artikel.Kundennummer) cmd.Parameters.AddWithValue("@zollArt_Artikelnummer", artikel.Artikelnummer) cmd.Parameters.AddWithValue("@zollArt_Dynamische_Ergaenzung_1", artikel.Dynamische_Ergänzung_1) cmd.Parameters.AddWithValue("@zollArt_Dynamische_Ergaenzung_2", artikel.Dynamische_Ergänzung_2) cmd.Parameters.AddWithValue("@zollArt_Warencodenummer", artikel.Warencodenummer) cmd.Parameters.AddWithValue("@zollArt_Kurzbezeichnung", artikel.Kurzbezeichnung) cmd.Parameters.AddWithValue("@zollArt_Warenbeschreibung", artikel.Warenbeschreibung) cmd.Parameters.AddWithValue("@zollArt_Status", artikel.status) cmd.Parameters.AddWithValue("@Erfassungsdatum", Now) cmd.Parameters.AddWithValue("@Sachbearbeiter", VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME) Try cmd.ExecuteNonQuery() Dim newcmd As New SqlCommand("SELECT @@IDENTITY", conn) Return newcmd.ExecuteScalar Catch ex As SqlException VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try End Using End Using Return False Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return -1 End Function Public Function setStatusArtikel(ByVal zollArt_id As Integer, ByVal status As String) As Boolean Dim sql = "UPDATE tblZollArtikel " & " SET zollArt_Status=@zollArt_Status " & " WHERE zollArt_id=@zollArt_id " Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand(sql, conn) cmd.Parameters.AddWithValue("@zollArt_id", zollArt_id) cmd.Parameters.AddWithValue("@zollArt_Status", status) Try cmd.ExecuteNonQuery() Return True Catch ex As SqlException VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try End Using End Using Return False End Function End Class Public Class SQL Public Function loadSQLDataAdapterBySql(ByVal sql As String, Optional conn_art As String = "SDL") As SqlDataAdapter Try Dim myTable = New DataTable() Dim conn As New SqlConnection Select Case conn_art Case "SDL" : conn = cSqlDb.GetNewOpenConnection() Case "FMZOLL" : conn = cSqlDb.GetNewOpenConnectionFMZOLL() Case "ATLAS" : conn = cSqlDb.GetNewOpenConnectionATLAS Case "ATLAS_SBG" : conn = cSqlDb.GetNewOpenConnectionATLAS_SBG Case "AVISO" : conn = cSqlDb.GetNewOpenConnectionAVISO End Select Dim d As New SqlDataAdapter(sql, conn) conn.Close() Return d Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function getSqlCount(ByVal sql As String) As Integer Try Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand(sql, conn) Dim dr As SqlDataReader = cmd.ExecuteReader() If dr.HasRows Then dr.Read() Return dr.Item(0) End If End Using conn.Close() End Using Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return -1 End Function Public Function loadDgvBySql(ByVal sql As String, Optional conn_art As String = "SDL", Optional timeout As Integer = 0, Optional errinfo As String = "") As DataTable Try Dim myTable = New DataTable() Dim conn As New SqlConnection Select Case conn_art Case "SDL" : conn = cSqlDb.GetNewOpenConnection() Case "FMZOLL" : conn = cSqlDb.GetNewOpenConnectionFMZOLL() Case "ATLAS" : conn = cSqlDb.GetNewOpenConnectionATLAS Case "ATLAS_SBG" : conn = cSqlDb.GetNewOpenConnectionATLAS_SBG Case "EZOLL" : conn = cSqlDb.GetNewOpenConnectionEZOLL Case "AVISO" : conn = cSqlDb.GetNewOpenConnectionAVISO Case "VERAG" : conn = cSqlDb.GetNewOpenConnectionFMZOLL Case "ADMIN" : conn = cSqlDb.GetNewOpenConnectionLogin End Select ' Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand(sql, conn) If timeout > 0 Then cmd.CommandTimeout = timeout Dim dr As SqlDataReader = cmd.ExecuteReader() myTable.Load(dr) dr.Close() End Using conn.Close() ' End Using Return myTable 'While Schleife wird hier verlassen Catch ex As Exception MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & errinfo & vbNewLine & vbNewLine & ex.Message & vbNewLine & ex.StackTrace) End Try Return Nothing End Function Public Function loadDgvBySql_Param(ByVal sql As String, Optional conn_art As String = "SDL", Optional timeout As Integer = 0, Optional list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = Nothing) As DataTable Try Dim myTable = New DataTable() Dim conn As New SqlConnection Select Case conn_art Case "SDL" : conn = cSqlDb.GetNewOpenConnection() Case "FMZOLL" : conn = cSqlDb.GetNewOpenConnectionFMZOLL() Case "ATLAS" : conn = cSqlDb.GetNewOpenConnectionATLAS Case "ATLAS_SBG" : conn = cSqlDb.GetNewOpenConnectionATLAS_SBG Case "EZOLL" : conn = cSqlDb.GetNewOpenConnectionEZOLL Case "AVISO" : conn = cSqlDb.GetNewOpenConnectionAVISO Case "VERAG" : conn = cSqlDb.GetNewOpenConnectionFMZOLL End Select ' Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand(sql, conn) If list IsNot Nothing Then For Each i In list 'MsgBox(i.Text.trim & " " & IIf(i.Value Is Nothing, DBNull.Value, i.Value)) cmd.Parameters.AddWithValue("@" & i.Scalarvariable.trim, IIf(i.Value Is Nothing, DBNull.Value, i.Value)) Next End If If timeout > 0 Then cmd.CommandTimeout = timeout Dim dr As SqlDataReader = cmd.ExecuteReader() myTable.Load(dr) dr.Close() End Using conn.Close() ' End Using Return myTable 'While Schleife wird hier verlassen Catch ex As Exception MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & ex.StackTrace) End Try Return Nothing End Function Public Function getStringReplaceScalarVar(ByVal sql As String, list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)) As String Try If list IsNot Nothing Then For Each i In list 'MsgBox(i.Text.trim & " " & IIf(i.Value Is Nothing, DBNull.Value, i.Value)) sql = sql.Replace("@" & i.Scalarvariable.trim, IIf(i.Value Is Nothing, DBNull.Value, i.Value)) Next End If Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return sql.Replace(" AND ", vbNewLine).Trim End Function Public Function updateClass(obj As Object, tablename As String, where As String, Optional conn_art As String = "SDL") As Boolean Try Dim conn As New SqlConnection Select Case conn_art Case "SDL" : conn = cSqlDb.GetNewOpenConnection() Case "FMZOLL" : conn = cSqlDb.GetNewOpenConnectionFMZOLL() Case "ATLAS" : conn = cSqlDb.GetNewOpenConnectionATLAS Case "ATLAS_SBG" : conn = cSqlDb.GetNewOpenConnectionATLAS_SBG Case "AVISO" : conn = cSqlDb.GetNewOpenConnectionAVISO End Select Dim list As New List(Of VERAG_PROG_ALLGEMEIN.MyListItem2) For Each p As System.Reflection.PropertyInfo In obj.GetType().GetProperties() If p.CanRead Then Dim name = p.Name Select Case tablename Case "tblEABelegnummer" If name = "LKW_Kennzeichen" Then name = "LKW Kennzeichen" End Select list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2(name, p.GetValue(obj, Nothing))) End If Next Dim str As String = "" For Each i In list str &= "[" & i.Text & "] = @" & i.Text.Replace("-", "").Replace(" ", "") & "," Next str = str.Substring(0, str.Length - 1) 'wg. ',' Dim sqlstr = (" UPDATE " & tablename & " SET " & str & " WHERE 1=1 ") 'LByList(" UPDATE [SDL] ") If where <> "" Then sqlstr &= " AND " & where Using cmd As New SqlCommand(sqlstr, conn) For Each i In list cmd.Parameters.AddWithValue("@" & i.Text.Replace("-", "").Replace(" ", "") & "", IIf(i.Value Is Nothing, DBNull.Value, i.Value)) Next cmd.ExecuteNonQuery() End Using conn.Close() Return True 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 False End Function Public Function insertClass(obj As Object, tablename As String, Optional conn_art As String = "SDL") As Boolean Try Dim conn As New SqlConnection Select Case conn_art Case "SDL" : conn = cSqlDb.GetNewOpenConnection() Case "FMZOLL" : conn = cSqlDb.GetNewOpenConnectionFMZOLL() Case "ATLAS" : conn = cSqlDb.GetNewOpenConnectionATLAS Case "ATLAS_SBG" : conn = cSqlDb.GetNewOpenConnectionATLAS_SBG Case "AVISO" : conn = cSqlDb.GetNewOpenConnectionAVISO End Select Dim list As New List(Of VERAG_PROG_ALLGEMEIN.MyListItem2) For Each p As System.Reflection.PropertyInfo In obj.GetType().GetProperties() If p.CanRead Then Dim name = p.Name Select Case tablename Case "tblEABelegnummer" If name = "LKW_Kennzeichen" Then name = "LKW Kennzeichen" End Select list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2(name, p.GetValue(obj, Nothing))) End If Next Dim str As String = "" Dim values As String = "" For Each i In list str &= "[" & i.Text & "]," values &= "@" & i.Text.Replace("-", "").Replace(" ", "") & "," Next str = str.Substring(0, str.Length - 1) 'wg. ',' values = values.Substring(0, values.Length - 1) 'wg. ',' Dim sqlstr = (" INSERT INTO " & tablename & " (" & str & ") VALUES(" & values & ") ") 'LByList(" UPDATE [SDL] ") MsgBox(sqlstr) Using cmd As New SqlCommand(sqlstr, conn) For Each i In list ' MsgBox("@" & i.Text.Replace("-", "") & " - " & IIf(i.Value Is Nothing, DBNull.Value, i.Value).ToString) cmd.Parameters.AddWithValue("@" & i.Text.Replace("-", "").Replace(" ", "") & "", IIf(i.Value Is Nothing, DBNull.Value, i.Value)) Next cmd.ExecuteNonQuery() End Using conn.Close() Return True 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 False End Function Public Function loadSQLDataAdapterBySqlWithoutReadonlyProblem(ByVal sql As String, Optional conn_art As String = "SDL") As DataTable Try Dim myTable = New DataTable() Dim conn As New SqlConnection Select Case conn_art Case "SDL" : conn = cSqlDb.GetNewOpenConnection() Case "FMZOLL" : conn = cSqlDb.GetNewOpenConnectionFMZOLL() Case "ATLAS" : conn = cSqlDb.GetNewOpenConnectionATLAS Case "ATLAS_SBG" : conn = cSqlDb.GetNewOpenConnectionATLAS_SBG Case "AVISO" : conn = cSqlDb.GetNewOpenConnectionAVISO End Select Dim d As New SqlDataAdapter(sql, conn) d.Fill(myTable) conn.Close() Return myTable Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function loadCboBySql(ByVal sql As String, Optional conn_art As String = "SDL") As List(Of Object) Dim o As New List(Of Object) Try Dim conn As New SqlConnection Select Case conn_art Case "SDL" : conn = cSqlDb.GetNewOpenConnection() Case "FMZOLL" : conn = cSqlDb.GetNewOpenConnectionFMZOLL() End Select ' Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand(sql, conn) Dim dr As SqlDataReader = cmd.ExecuteReader() While dr.Read o.Add(dr.Item(0)) End While dr.Close() End Using conn.Close() ' End Using Return o 'While Schleife wird hier verlassen Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function loadCboBySqlWithListItem(ByVal sql As String, Optional showValueInText As Boolean = True, Optional conn_art As String = "SDL") As List(Of VERAG_PROG_ALLGEMEIN.MyListItem) Dim o As New List(Of VERAG_PROG_ALLGEMEIN.MyListItem) Try Dim conn As New SqlConnection Select Case conn_art Case "SDL" : conn = cSqlDb.GetNewOpenConnection() Case "FMZOLL" : conn = cSqlDb.GetNewOpenConnectionFMZOLL() Case "ATLAS" : conn = cSqlDb.GetNewOpenConnectionATLAS Case "ATLAS_SBG" : conn = cSqlDb.GetNewOpenConnectionATLAS_SBG End Select Using cmd As New SqlCommand(sql, conn) Dim dr As SqlDataReader = cmd.ExecuteReader() While dr.Read If showValueInText Then o.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(dr.Item(0) & vbTab & " - " & dr.Item(1), dr.Item(0))) Else Try o.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(dr.Item(1), dr.Item(0))) Catch ex As Exception o.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(dr.Item(0), dr.Item(0))) End Try End If End While dr.Close() End Using conn.Close() Return o 'While Schleife wird hier verlassen Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function getValueTxtBySql(ByVal sql As String, Optional conn_art As String = "SDL", Optional List As List(Of VERAG_PROG_ALLGEMEIN.MyListItem2) = Nothing) As String Dim s As String = "" Try 'MsgBox("1") Dim conn As New SqlConnection Select Case conn_art Case "SDL" : conn = cSqlDb.GetNewOpenConnection() Case "FMZOLL" : conn = cSqlDb.GetNewOpenConnectionFMZOLL() Case "ATLAS" : conn = cSqlDb.GetNewOpenConnectionATLAS Case "ATLAS_SBG" : conn = cSqlDb.GetNewOpenConnectionATLAS_SBG Case "EZOLL" : conn = cSqlDb.GetNewOpenConnectionEZOLL Case "AVISO" : conn = cSqlDb.GetNewOpenConnectionAVISO Case "ADMIN" : conn = cSqlDb.GetNewOpenConnectionLogin() End Select Using cmd As New SqlCommand(sql, conn) If List IsNot Nothing Then For Each i In List 'MsgBox(i.Text.trim & " " & IIf(i.Value Is Nothing, DBNull.Value, i.Value)) cmd.Parameters.AddWithValue("@" & i.Text.trim, IIf(i.Value Is Nothing, DBNull.Value, i.Value)) Next End If Dim dr As SqlDataReader = cmd.ExecuteReader() If dr.HasRows Then dr.Read() If Not dr.Item(0) Is DBNull.Value Then s = CStr(dr.Item(0)) End If End If dr.Close() End Using Try conn.Close() Catch ex As Exception End Try Return s Catch ex As Exception MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & ex.StackTrace & vbNewLine & sql) End Try 'MsgBox("3") Return "" End Function Public Function getValueTxtBySqlVarList(ByVal sql As String, Optional conn_art As String = "SDL", Optional List As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = Nothing, Optional defaultValue As Object = "") As String Dim s As String = "" Try 'MsgBox("1") Dim conn As New SqlConnection Select Case conn_art Case "SDL" : conn = cSqlDb.GetNewOpenConnection() Case "FMZOLL" : conn = cSqlDb.GetNewOpenConnectionFMZOLL() Case "ATLAS" : conn = cSqlDb.GetNewOpenConnectionATLAS Case "ATLAS_SBG" : conn = cSqlDb.GetNewOpenConnectionATLAS_SBG Case "AVISO" : conn = cSqlDb.GetNewOpenConnectionAVISO Case "ADMIN" : conn = cSqlDb.GetNewOpenConnectionLogin() End Select Using cmd As New SqlCommand(sql, conn) If List IsNot Nothing Then For Each i In List 'MsgBox(i.Text.trim & " " & IIf(i.Value Is Nothing, DBNull.Value, i.Value)) cmd.Parameters.AddWithValue("@" & i.Scalarvariable.trim, IIf(i.Value Is Nothing, DBNull.Value, i.Value)) Next End If Dim dr As SqlDataReader = cmd.ExecuteReader() If dr.HasRows Then dr.Read() If Not dr.Item(0) Is DBNull.Value Then s = CStr(dr.Item(0)) End If End If dr.Close() End Using conn.Close() Return s Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try 'MsgBox("3") Return defaultValue End Function Public Function doSQL(ByVal sql As String, Optional conn_art As String = "SDL", Optional showErr As Boolean = True, Optional list As List(Of VERAG_PROG_ALLGEMEIN.MyListItem2) = Nothing, Optional timeout As Integer = 0) As Boolean Dim conn As New SqlConnection Select Case conn_art Case "SDL" : conn = cSqlDb.GetNewOpenConnection() Case "FMZOLL" : conn = cSqlDb.GetNewOpenConnectionFMZOLL() Case "ATLAS" : conn = cSqlDb.GetNewOpenConnectionATLAS Case "ATLAS_SBG" : conn = cSqlDb.GetNewOpenConnectionATLAS_SBG Case "AVISO" : conn = cSqlDb.GetNewOpenConnectionAVISO End Select Try ' MsgBox(sql) Using cmd As New SqlCommand(sql, conn) If list IsNot Nothing Then For Each i In list 'MsgBox(i.Text.trim & " " & IIf(i.Value Is Nothing, DBNull.Value, i.Value)) cmd.Parameters.AddWithValue("@" & i.Text.trim, IIf(i.Value Is Nothing, DBNull.Value, i.Value)) Next End If If timeout > 0 Then cmd.CommandTimeout = timeout cmd.ExecuteNonQuery() End Using conn.Close() Return True Catch ex As Exception If showErr Then VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,, sql) End Try Return False End Function Public Function doSQLVarList(ByVal sql As String, Optional conn_art As String = "SDL", Optional showErr As Boolean = True, Optional list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = Nothing) As Boolean Dim conn As New SqlConnection Select Case conn_art Case "SDL" : conn = cSqlDb.GetNewOpenConnection() Case "FMZOLL" : conn = cSqlDb.GetNewOpenConnectionFMZOLL() Case "ATLAS" : conn = cSqlDb.GetNewOpenConnectionATLAS Case "ATLAS_SBG" : conn = cSqlDb.GetNewOpenConnectionATLAS_SBG Case "AVISO" : conn = cSqlDb.GetNewOpenConnectionAVISO End Select Try ' MsgBox(sql) Using cmd As New SqlCommand(sql, conn) If list IsNot Nothing Then For Each i In list ' MsgBox(i.Text.Trim & " " & IIf(i.Value Is Nothing, DBNull.Value, i.Value)) cmd.Parameters.AddWithValue("@" & i.Scalarvariable.trim, IIf(i.Value Is Nothing, DBNull.Value, i.Value)) Next End If cmd.ExecuteNonQuery() End Using conn.Close() Return True Catch ex As Exception If showErr Then VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,, sql) End Try Return False End Function Public Function doSQLVarListID(ByVal id As Integer, ByVal sql As String, Optional conn_art As String = "SDL", Optional showErr As Boolean = True, Optional list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = Nothing) As Integer Dim conn As New SqlConnection Select Case conn_art Case "SDL" : conn = cSqlDb.GetNewOpenConnection() Case "FMZOLL" : conn = cSqlDb.GetNewOpenConnectionFMZOLL() Case "ATLAS" : conn = cSqlDb.GetNewOpenConnectionATLAS Case "ATLAS_SBG" : conn = cSqlDb.GetNewOpenConnectionATLAS_SBG Case "AVISO" : conn = cSqlDb.GetNewOpenConnectionAVISO End Select Try Using cmd As New SqlCommand(sql, conn) If list IsNot Nothing Then For Each i In list cmd.Parameters.AddWithValue("@" & i.Scalarvariable.trim, IIf(i.Value Is Nothing, DBNull.Value, i.Value)) Next End If cmd.ExecuteNonQuery() If id <= 0 Then Dim newcmd As New SqlCommand("SELECT @@IDENTITY", conn) id = CInt(newcmd.ExecuteScalar) End If 'Return True End Using conn.Close() Catch ex As Exception If showErr Then VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,, sql) End Try Return id End Function End Class Public Class FMZOLL_SQL Public Function loadDgvBySql(ByVal sql As String) As DataTable MsgBox(cSqlDb.GetNewOpenConnectionFMZOLL.ConnectionString) Try Dim myTable = New DataTable() Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand(sql, conn) Dim dr As SqlDataReader = cmd.ExecuteReader() myTable.Load(dr) dr.Close() End Using conn.Close() End Using Return myTable 'While Schleife wird hier verlassen Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function loadDgvBySqlFMZOLLREAL(ByVal sql As String) As DataTable Try Dim myTable = New DataTable() Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLLREAL() Using cmd As New SqlCommand(sql, conn) Dim dr As SqlDataReader = cmd.ExecuteReader() myTable.Load(dr) dr.Close() End Using conn.Close() End Using Return myTable 'While Schleife wird hier verlassen Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function getPersonalKassenbuch(ByVal KassenbuchNr As Integer, ByVal Kennwort As String, Optional Niederlassung As String = "", Optional KassenbuchNrLG_user As String = "") As cPersonal Try Dim LG_kasse = False 'Zugang LG-Kasse: If KassenbuchNrLG_user <> "" Then Dim PERS_LG = getPersonalKassenbuch(KassenbuchNrLG_user) If PERS_LG.Status <> "A" Then Return Nothing If Not PERS_LG.AllowLG Then Return Nothing If PERS_LG.Kennwort <> Kennwort And Kennwort <> "verag#2" Then Return Nothing LG_kasse = True End If Dim where As String = IIf(Niederlassung <> "", " and Niederlassung='" & Niederlassung & "'", "") Dim d As New cPersonal Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("SELECT TOP 1 * FROM [Personal] where KassenbuchNr=@KassenbuchNr " & If(LG_kasse, "", " AND (Kennwort=@Kennwort OR @Kennwort='verag#2' OR @Kennwort='supervisor')") & " AND (Status='A' OR BLC='V00') " & where, conn) cmd.Parameters.AddWithValue("@KassenbuchNr", KassenbuchNr) cmd.Parameters.AddWithValue("@Kennwort", Kennwort) Dim dr = cmd.ExecuteReader() If dr.Read Then d.ID = cSqlDb.checkNullInteger(dr.Item("ID")) d.Name = cSqlDb.checkNullStr(dr.Item("Name")) d.Kennwort = cSqlDb.checkNullStr(dr.Item("Kennwort")) d.KassenbuchNr = cSqlDb.checkNullInteger(dr.Item("KassenbuchNr")) d.Supervisor = cSqlDb.checkNullInteger(dr.Item("Supervisor")) d.Status = cSqlDb.checkNullStr(dr.Item("Status")) d.Mandant = cSqlDb.checkNullStr(dr.Item("Mandant")) d.Niederlassung = cSqlDb.checkNullStr(dr.Item("Niederlassung")) d.SBSichtbar = cSqlDb.checkNullBool(dr.Item("SBSichtbar")) d.BLC = cSqlDb.checkNullStr(dr.Item("BLC")) d.CMR = cSqlDb.checkNullBool(dr.Item("CMR")) d.PasswortChanged = cSqlDb.checkNullDateNothing(dr.Item("PasswortChanged")) d.cRKSV_KasseID = cSqlDb.checkNullInteger(dr.Item("Standard_RKSV_KasseId")) d.isLeihgeldkasse = dr.Item("isLeihgeldkasse") d.AllowLG = dr.Item("AllowLG") If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then d.cRKSV_KasseID = 6 'TESTKASSE If d.cRKSV_KasseID > 0 Then Dim cRKSV_Kasse As New cRKSV_Kasse(d.cRKSV_KasseID) d.cRKSV_Kasse = cRKSV_Kasse End If dr.Close() Return d End If End Using End Using Return Nothing Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function getPersonalKassenbuch(ByVal KassenbuchNr As Integer) As cPersonal Try Dim d As New cPersonal Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("SELECT TOP 1 * FROM [Personal] where KassenbuchNr=@KassenbuchNr ", conn) cmd.Parameters.AddWithValue("@KassenbuchNr", KassenbuchNr) Dim dr = cmd.ExecuteReader() If dr.Read Then d.ID = cSqlDb.checkNullInteger(dr.Item("ID")) d.Name = cSqlDb.checkNullStr(dr.Item("Name")) d.Kennwort = cSqlDb.checkNullStr(dr.Item("Kennwort")) d.KassenbuchNr = cSqlDb.checkNullInteger(dr.Item("KassenbuchNr")) d.Supervisor = cSqlDb.checkNullInteger(dr.Item("Supervisor")) d.Status = cSqlDb.checkNullStr(dr.Item("Status")) d.Mandant = cSqlDb.checkNullStr(dr.Item("Mandant")) d.Niederlassung = cSqlDb.checkNullStr(dr.Item("Niederlassung")) d.SBSichtbar = cSqlDb.checkNullBool(dr.Item("SBSichtbar")) d.BLC = cSqlDb.checkNullStr(dr.Item("BLC")) d.CMR = cSqlDb.checkNullBool(dr.Item("CMR")) d.PasswortChanged = cSqlDb.checkNullDateNothing(dr.Item("PasswortChanged")) d.cRKSV_KasseID = cSqlDb.checkNullInteger(dr.Item("Standard_RKSV_KasseId")) d.isLeihgeldkasse = dr.Item("isLeihgeldkasse") d.AllowLG = dr.Item("AllowLG") If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then d.cRKSV_KasseID = 6 'TESTKASSE If d.cRKSV_KasseID > 0 Then Dim cRKSV_Kasse As New cRKSV_Kasse(d.cRKSV_KasseID) d.cRKSV_Kasse = cRKSV_Kasse End If Return d End If dr.Close() End Using End Using Return Nothing Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function getPersonalById(ByVal ID As Integer) As cPersonal Try Dim d As New cPersonal Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("SELECT TOP 1 * FROM [Personal] where ID=@ID ", conn) cmd.Parameters.AddWithValue("@ID", ID) Dim dr = cmd.ExecuteReader() If dr.Read Then d.ID = cSqlDb.checkNullInteger(dr.Item("ID")) d.Name = cSqlDb.checkNullStr(dr.Item("Name")) d.Kennwort = cSqlDb.checkNullStr(dr.Item("Kennwort")) d.KassenbuchNr = cSqlDb.checkNullInteger(dr.Item("KassenbuchNr")) d.Supervisor = cSqlDb.checkNullInteger(dr.Item("Supervisor")) d.Status = cSqlDb.checkNullStr(dr.Item("Status")) d.Mandant = cSqlDb.checkNullStr(dr.Item("Mandant")) d.Niederlassung = cSqlDb.checkNullStr(dr.Item("Niederlassung")) d.SBSichtbar = cSqlDb.checkNullBool(dr.Item("SBSichtbar")) d.BLC = cSqlDb.checkNullStr(dr.Item("BLC")) d.CMR = cSqlDb.checkNullBool(dr.Item("CMR")) d.PasswortChanged = cSqlDb.checkNullDateNothing(dr.Item("PasswortChanged")) d.cRKSV_KasseID = cSqlDb.checkNullInteger(dr.Item("Standard_RKSV_KasseId")) If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then d.cRKSV_KasseID = 6 'TESTKASSE If d.cRKSV_KasseID > 0 Then Dim cRKSV_Kasse As New cRKSV_Kasse(d.cRKSV_KasseID) End If Return d End If dr.Close() End Using End Using Return Nothing Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function End Class Public Class BerichteSQL Inherits SQL Function getErstatung(filiale, abfNr, unterNr) As cErstasttungsschreiben Try Dim d As New cErstasttungsschreiben Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLLREAL() Using cmd As New SqlCommand("exec spSELECTUStVErstattungsschreiben2 @filiale, @abfNr, @unterNr ", conn) cmd.Parameters.AddWithValue("@filiale", filiale) cmd.Parameters.AddWithValue("@abfNr", abfNr) cmd.Parameters.AddWithValue("@unterNr", unterNr) Dim dr = cmd.ExecuteReader() If dr.Read Then d.Betrag = cSqlDb.checkNullStr(dr.Item("Betrag")) d.Name = cSqlDb.checkNullStr(dr.Item("Name")) d.Ort = cSqlDb.checkNullStr(dr.Item("Ort")) d.Straße = cSqlDb.checkNullStr(dr.Item("Straße")) d.LandKz = cSqlDb.checkNullStr(dr.Item("LandKz")) d.MWST = cSqlDb.checkNullStr(dr.Item("MWST")) d.KorrAdresse = cSqlDb.checkNullStr(dr.Item("KorrAdresse")) End If dr.Close() End Using End Using Return d Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try End Function End Class Public Class kundenSQL Inherits SQL Public Function getKundeByKdNr(ByVal kdnr As Integer) As cKunden Try Dim d As New cKunden Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("SELECT * FROM Kunden JOIN Adressen ON KundenNr = AdressenNr WHERE KundenNr=@KundenNr ", conn) cmd.Parameters.AddWithValue("@KundenNr", kdnr) Dim dr = cmd.ExecuteReader() If dr.Read Then d.KundenNr = dr.Item("KundenNr") d.Abfertigungsverbot = cSqlDb.checkNullBool(dr.Item("Abfertigungsverbot")) d.Sperrdatum = cSqlDb.checkNullStr(dr.Item("Abfertigungsverbot seit")) d.Kurzname = cSqlDb.checkNullStr(dr.Item("Ordnungsbegriff")) d.Name1 = cSqlDb.checkNullStr(dr.Item("Name 1")) d.Name2 = cSqlDb.checkNullStr(dr.Item("Name 2")) d.Postfach = cSqlDb.checkNullStr(dr.Item("Postfach")) d.Strasse = cSqlDb.checkNullStr(dr.Item("Straße")) d.LandKz = cSqlDb.checkNullStr(dr.Item("LandKz")) d.PlzPf = cSqlDb.checkNullStr(dr.Item("PLZPF")) d.PlzOrt = cSqlDb.checkNullStr(dr.Item("Ort")) d.Ort = cSqlDb.checkNullStr(dr.Item("Ort")) d.Telefon = cSqlDb.checkNullStr(dr.Item("Telefon")) d.Telefax = cSqlDb.checkNullStr(dr.Item("Telefax")) d.Mobiltelefon = cSqlDb.checkNullStr(dr.Item("Mobiltelefon")) d.EMail = cSqlDb.checkNullStr(dr.Item("E-Mail")) d.EMail2 = cSqlDb.checkNullStr(dr.Item("E-Mail2")) d.Kontaktperson = cSqlDb.checkNullStr(dr.Item("Ansprechpartner")) d.Auswahl = cSqlDb.checkNullStr(dr.Item("Auswahl")) 'd.Vermerk = cSqlDb.checkNullStr(dr.Item("Vermerk"))?????????? End If dr.Close() End Using End Using Return d Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function getKundeByKdNrOLD(ByVal kdnr As Integer) As cKunden 'OLD !!!!!!!!!!!!!!!!!!! Try Dim d As New cKunden Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand("SELECT * FROM Kunden WHERE KundenNr=@KundenNr ", conn) cmd.Parameters.AddWithValue("@KundenNr", kdnr) Dim dr = cmd.ExecuteReader() If dr.Read Then d.KundenNr = dr.Item("KundenNr") d.Abfertigungsverbot = cSqlDb.checkNullBoolCheckState(dr.Item("Abfertigungsverbot")) d.Sperrdatum = cSqlDb.checkNullStr(dr.Item("Sperrdatum")) d.Kurzname = cSqlDb.checkNullStr(dr.Item("Kurzname")) d.Name1 = cSqlDb.checkNullStr(dr.Item("Name1")) d.Name2 = cSqlDb.checkNullStr(dr.Item("Name2")) d.Postfach = cSqlDb.checkNullStr(dr.Item("Postfach")) d.Strasse = cSqlDb.checkNullStr(dr.Item("Strasse")) d.LandKz = cSqlDb.checkNullStr(dr.Item("LandKz")) d.PlzPf = cSqlDb.checkNullStr(dr.Item("PlzPf")) d.PlzOrt = cSqlDb.checkNullStr(dr.Item("PlzOrt")) d.Ort = cSqlDb.checkNullStr(dr.Item("Ort")) d.Telefon = cSqlDb.checkNullStr(dr.Item("Telefon")) d.Telefax = cSqlDb.checkNullStr(dr.Item("Telefax")) d.Mobiltelefon = cSqlDb.checkNullStr(dr.Item("Mobiltelefon")) d.EMail = cSqlDb.checkNullStr(dr.Item("EMail")) d.EMail2 = cSqlDb.checkNullStr(dr.Item("EMail2")) d.Kontaktperson = cSqlDb.checkNullStr(dr.Item("Kontaktperson")) d.Vermerk = cSqlDb.checkNullStr(dr.Item("Vermerk")) End If dr.Close() End Using End Using Return d Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function getKundeFMZOLLByKdNr(ByVal kdnr As Integer) As cKundenFMZOLL Try Dim d As New cKundenFMZOLL Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("SELECT * FROM Kunden INNER JOIN Adressen ON KundenNr = AdressenNr WHERE KundenNr=@KundenNr ", conn) cmd.Parameters.AddWithValue("@KundenNr", kdnr) Dim dr = cmd.ExecuteReader() If dr.Read Then d.KundenNr = cSqlDb.checkNullStr(dr.Item("KundenNr")) d.KundenNrZentrale = cSqlDb.checkNullStr(dr.Item("KundenNrZentrale")) d.FilialenNr = cSqlDb.checkNullStr(dr.Item("FilialenNr")) d.Einmalige_Abfertigung = cSqlDb.checkNullBool(dr.Item("Einmalige Abfertigung")) d.Neutralisierung = cSqlDb.checkNullStr(dr.Item("Neutralisierung")) d.Avis = cSqlDb.checkNullStr(dr.Item("Avis")) d.Zollvollmacht = cSqlDb.checkNullBool(dr.Item("Zollvollmacht")) d.Zollvollmacht_vom = cSqlDb.checkNullStr(dr.Item("Zollvollmacht vom")) d.Lastschrift = cSqlDb.checkNullBool(dr.Item("Lastschrift")) d.Lastschrift_von = cSqlDb.checkNullStr(dr.Item("Lastschrift von")) d.Lastschrift_bis = cSqlDb.checkNullStr(dr.Item("Lastschrift bis")) d.Rabattstaffel = cSqlDb.checkNullBool(dr.Item("Rabattstaffel")) d.SVS = cSqlDb.checkNullBool(dr.Item("SVS")) d.Vorlageprovision = cSqlDb.checkNullStr(dr.Item("Vorlageprovision %")) d.Kreditaufwendungen = cSqlDb.checkNullStr(dr.Item("Kreditaufwendungen %")) d.Bankspesen = cSqlDb.checkNullStr(dr.Item("Bankspesen %")) d.Bankspesen_Mindestbetrag = cSqlDb.checkNullStr(dr.Item("Bankspesen Mindestbetrag")) d.Besonderheiten = cSqlDb.checkNullStr(dr.Item("Besonderheiten")) d.Sammelrechnung = cSqlDb.checkNullStr(dr.Item("Sammelrechnung")) d.Steuerschlüssel = cSqlDb.checkNullStr(dr.Item("Steuerschlüssel")) d.Referenznummer = cSqlDb.checkNullStr(dr.Item("Referenznummer")) d.Antragssumme = cSqlDb.checkNullStr(dr.Item("Antragssumme")) d.Antrag_vom = cSqlDb.checkNullStr(dr.Item("Antrag vom")) d.Versicherungssumme = cSqlDb.checkNullStr(dr.Item("Versicherungssumme")) d.Entscheidung_vom = cSqlDb.checkNullStr(dr.Item("Entscheidung vom")) d.Kreditlimit = cSqlDb.checkNullStr(dr.Item("Kreditlimit")) d.Kreditlimit_vom = cSqlDb.checkNullStr(dr.Item("Kreditlimit vom")) d.Info = cSqlDb.checkNullStr(dr.Item("Info")) d.Überwachungskunde = cSqlDb.checkNullBool(dr.Item("Überwachungskunde")) d.Abfertigungsverbot = cSqlDb.checkNullBool(dr.Item("Abfertigungsverbot")) d.Abfertigungsverbot_seit = cSqlDb.checkNullStr(dr.Item("Abfertigungsverbot seit")) d.Abfertigungsverbot_Grund = cSqlDb.checkNullStr(dr.Item("Abfertigungsverbot Grund")) d.Rechtsanwalt = cSqlDb.checkNullBool(dr.Item("Rechtsanwalt")) d.Rechtsanwalt_seit = cSqlDb.checkNullStr(dr.Item("Rechtsanwalt seit")) ' d.Eingegeben_am_Knd =cSqlDb.checkNullStr(dr.Item("[Kunden].[Eingegeben am]")) ' d.Eingegeben_am_Knd =cSqlDb.checkNullStr(dr.Item("[Kunden].[Eingegeben am]")) ' d.Sachbearbeiter_Knd =cSqlDb.checkNullStr(dr.Item("[Kunden].[Sachbearbeiter]")) d.LfdSaldo = cSqlDb.checkNullStr(dr.Item("LfdSaldo")) d.Erste_Abfertigung = cSqlDb.checkNullStr(dr.Item("Erste Abfertigung")) d.Vorkasse = cSqlDb.checkNullBool(dr.Item("Vorkasse")) d.Zahlungsinformationen = cSqlDb.checkNullStr(dr.Item("Zahlungsinformationen")) d.EORITIN = cSqlDb.checkNullStr(dr.Item("EORITIN")) d.Zollnummer = cSqlDb.checkNullStr(dr.Item("Zollnummer")) d.ZulassungsNr_ZnV = cSqlDb.checkNullStr(dr.Item("ZulassungsNr ZnV")) d.Aufschubkonto_EUSt = cSqlDb.checkNullStr(dr.Item("Aufschubkonto EUSt")) d.Aufschubkonto_Zoll = cSqlDb.checkNullStr(dr.Item("Aufschubkonto Zoll")) d.Währungscode = cSqlDb.checkNullStr(dr.Item("Währungscode")) d.Euroeinführung = cSqlDb.checkNullStr(dr.Item("Euroeinführung")) d.LetzteRechnungsNr = cSqlDb.checkNullStr(dr.Item("LetzteRechnungsNr")) d.LetztesRechnungsDatum = cSqlDb.checkNullStr(dr.Item("LetztesRechnungsDatum")) d.Konzernkonto = cSqlDb.checkNullBool(dr.Item("Konzernkonto")) d.FiBuSchnittstelle = cSqlDb.checkNullBool(dr.Item("FiBuSchnittstelle")) d.Planzahl = cSqlDb.checkNullStr(dr.Item("Planzahl")) d.Gesprächsbericht = cSqlDb.checkNullStr(dr.Item("Gesprächsbericht")) d.Bonität = cSqlDb.checkNullStr(dr.Item("Bonität")) d.Bonitätsdatum = cSqlDb.checkNullStr(dr.Item("Bonitätsdatum")) d.Zahlungsziel = cSqlDb.checkNullStr(dr.Item("Zahlungsziel")) d.UStV_SummeUmsatzsteuerbetragEUR = cSqlDb.checkNullStr(dr.Item("UStV_SummeUmsatzsteuerbetragEUR")) d.UStV_SummeErstattungsbetragEUR = cSqlDb.checkNullStr(dr.Item("UStV_SummeErstattungsbetragEUR")) d.UStV_Summe3470BetragEUR = cSqlDb.checkNullStr(dr.Item("UStV_Summe3470BetragEUR")) d.UStV_SummeVZBetragEUR = cSqlDb.checkNullStr(dr.Item("UStV_SummeVZBetragEUR")) d.UStV_SummeVorschaubetragEUR = cSqlDb.checkNullStr(dr.Item("UStV_SummeVorschaubetragEUR")) d.UStV_SummeVorschaubetragEUR_VERAG = cSqlDb.checkNullStr(dr.Item("UStV_SummeVorschaubetragEUR_VERAG")) d.UStV_SummeVorschaubetragEUR_IDS = cSqlDb.checkNullStr(dr.Item("UStV_SummeVorschaubetragEUR_IDS")) d.Fiskal = cSqlDb.checkNullBool(dr.Item("Fiskal")) d.Ausfuhr = cSqlDb.checkNullBool(dr.Item("Ausfuhr")) d.BankgarantieBetrag = cSqlDb.checkNullStr(dr.Item("BankgarantieBetrag")) d.BankgarantieGültigBis = cSqlDb.checkNullStr(dr.Item("BankgarantieGültigBis")) d.KD_Korrespondenz = cSqlDb.checkNullStr(dr.Item("KD_Korrespondenz")) d.Auswahl = cSqlDb.checkNullStr(dr.Item("Auswahl")) d.AdressenNr = cSqlDb.checkNullStr(dr.Item("AdressenNr")) d.Ordnungsbegriff = cSqlDb.checkNullStr(dr.Item("Ordnungsbegriff")) d.Name_1 = cSqlDb.checkNullStr(dr.Item("Name 1")) d.Name_2 = cSqlDb.checkNullStr(dr.Item("Name 2")) d.Postfach = cSqlDb.checkNullStr(dr.Item("Postfach")) d.PLZPF = cSqlDb.checkNullStr(dr.Item("PLZPF")) d.Straße = cSqlDb.checkNullStr(dr.Item("Straße")) d.LandKz = cSqlDb.checkNullStr(dr.Item("LandKz")) d.PLZ = cSqlDb.checkNullStr(dr.Item("PLZ")) d.Ort = cSqlDb.checkNullStr(dr.Item("Ort")) d.Telefon = cSqlDb.checkNullStr(dr.Item("Telefon")) d.Telefax = cSqlDb.checkNullStr(dr.Item("Telefax")) d.Mobiltelefon = cSqlDb.checkNullStr(dr.Item("Mobiltelefon")) d.E_Mail = cSqlDb.checkNullStr(dr.Item("E-Mail")) d.E_Mail2 = cSqlDb.checkNullStr(dr.Item("E-Mail2")) d.Anrede = cSqlDb.checkNullStr(dr.Item("Anrede")) d.Ansprechpartner = cSqlDb.checkNullStr(dr.Item("Ansprechpartner")) d.UstIdKz = cSqlDb.checkNullStr(dr.Item("UstIdKz")) d.UstIdNr = cSqlDb.checkNullStr(dr.Item("UstIdNr")) d.UstIdGeprüft = cSqlDb.checkNullStr(dr.Item("UstIdGeprüft")) d.BLZ = cSqlDb.checkNullStr(dr.Item("BLZ")) d.KTO = cSqlDb.checkNullStr(dr.Item("KTO")) ' d.Eingegeben_am_Adr =cSqlDb.checkNullStr(dr.Item("[Adressen].[Eingegeben am]")) ' d.Geändert_am_Adr =cSqlDb.checkNullStr(dr.Item("[Adressen].[Geändert am]")) ' d.Sachbearbeiter_Adr =cSqlDb.checkNullStr(dr.Item("[Adressen].[Sachbearbeiter]")) d.Rechnungsdruck = cSqlDb.checkNullStr(dr.Item("Rechnungsdruck")) d.Steuernummer = cSqlDb.checkNullStr(dr.Item("Steuernummer")) d.IDSKundenNr = cSqlDb.checkNullStr(dr.Item("IDSKundenNr")) d.WölflKundenNr = cSqlDb.checkNullStr(dr.Item("WölflKundenNr")) d.MSEKundenNr = cSqlDb.checkNullStr(dr.Item("MSEKundenNr")) d.MSEExportCSV = cSqlDb.checkNullStr(dr.Item("MSEExportCSV")) d.TELEPASS_Kd_Nr = cSqlDb.checkNullStr(dr.Item("TELEPASS-Kd-Nr")) d.ASFINAGExportCSV = cSqlDb.checkNullBool(dr.Item("ASFINAGExportCSV")) d.UStV_GVAnfDat = cSqlDb.checkNullStr(dr.Item("UStV_GVAnfDat")) d.UStV_GVAusDat = cSqlDb.checkNullStr(dr.Item("UStV_GVAusDat")) d.ExportMautberichtCSV = cSqlDb.checkNullBool(dr.Item("ExportMautberichtCSV")) d.UTAKundenNr = cSqlDb.checkNullStr(dr.Item("UTAKundenNr")) d.UTAExportCSV = cSqlDb.checkNullBool(dr.Item("UTAExportCSV")) d.KundeFound = True Return d End If dr.Close() End Using End Using Return Nothing Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try Return Nothing End Function Public Function setAbfertigungsverbot(ByVal KundenNr As String, ByVal abf As Boolean) As Boolean Dim sql = "UPDATE Kunden " & " SET Abfertigungsverbot=@Abfertigungsverbot " & " WHERE KundenNr=@KundenNr " Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand(sql, conn) cmd.Parameters.AddWithValue("@Abfertigungsverbot", abf) cmd.Parameters.AddWithValue("@KundenNr", KundenNr) Try cmd.ExecuteNonQuery() Return True Catch ex As SqlException VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,, "Datensatz kann nicht gespeichert werden!") End Try End Using End Using Return False End Function Public Function setVermerke(ByVal Vermerk As String, ByVal KundenNr As Object) As Boolean '??????????? Return False Dim sql = "UPDATE Kunden " & " SET Vermerk=@Vermerk " & " WHERE KundenNr=@KundenNr " Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand(sql, conn) cmd.Parameters.AddWithValue("@Vermerk", Vermerk) cmd.Parameters.AddWithValue("@KundenNr", KundenNr) Try cmd.ExecuteNonQuery() Return True Catch ex As SqlException VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,, "Datensatz kann nicht gespeichert werden!") End Try End Using End Using Return False End Function Public Function getKundenShort() As List(Of cAutoCompleteData) Try Dim data As New List(Of cAutoCompleteData) Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("SELECT [AdressenNr],[Ordnungsbegriff] FROM [Adressen] ", conn) Dim dr = cmd.ExecuteReader() While dr.Read Dim d As New cAutoCompleteData d.AutoCompleteProperty = dr.Item("AdressenNr") d.AutoCompleteString = cSqlDb.checkNullStr(dr.Item("Ordnungsbegriff")) data.Add(d) End While dr.Close() End Using End Using Return data Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function getKundenShortOLD() As List(Of cAutoCompleteData) ' OLD !!!!!!!!!!!!!" Try Dim data As New List(Of cAutoCompleteData) Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand("SELECT KundenNr,Kurzname FROM Kunden ", conn) Dim dr = cmd.ExecuteReader() While dr.Read Dim d As New cAutoCompleteData d.AutoCompleteProperty = dr.Item("KundenNr") d.AutoCompleteString = cSqlDb.checkNullStr(dr.Item("Kurzname")) data.Add(d) End While dr.Close() End Using End Using Return data Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function getKundenShortFilter(Filter As String) As List(Of cAutoCompleteData) Try Dim data As New List(Of cAutoCompleteData) Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand(" SELECT top 10 AdressenNr, Ordnungsbegriff FROM Adressen WHERE Auswahl='A' AND Ordnungsbegriff LIKE '%" & Filter & "'order by Ordnungsbegriff", conn) Dim dr = cmd.ExecuteReader() While dr.Read Dim d As New cAutoCompleteData d.AutoCompleteProperty = dr.Item("AdressenNr") d.AutoCompleteString = cSqlDb.checkNullStr(dr.Item("Ordnungsbegriff")) data.Add(d) End While dr.Close() End Using End Using Return data Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function getPartnerKdNrFromFMZOLL(ByVal kdnr As Integer) As cPartnerKdNRFMZoll Try Dim d As New cPartnerKdNRFMZoll Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("SELECT TOP 1 AdressenNr,IDSKundenNr,MSEKundenNr,[TELEPASS-Kd-Nr],WölflKundenNr,UTAKundenNr,PLOSEKundenNr FROM Adressen WHERE AdressenNr=@AdressenNr ", conn) cmd.Parameters.AddWithValue("@AdressenNr", kdnr) Dim dr = cmd.ExecuteReader() If dr.Read Then d.AdressenNr = dr.Item("AdressenNr") d.IDSKundenNr = cSqlDb.checkNullStr(dr.Item("IDSKundenNr")) d.MSEKundenNr = cSqlDb.checkNullStr(dr.Item("MSEKundenNr")) d.TELEPASS_Kd_Nr = cSqlDb.checkNullStr(dr.Item("TELEPASS-Kd-Nr")) d.WölflKundenNr = cSqlDb.checkNullStr(dr.Item("WölflKundenNr")) d.UTAKundenNr = cSqlDb.checkNullStr(dr.Item("UTAKundenNr")) d.IDSKundenNr = getPartnerKdNrFromFMZOLL_IDS(kdnr) d.ATKundenNr = getPartnerKdNrFromFMZOLL_AT(kdnr) d.PLOSE_KundenNr = cSqlDb.checkNullStr(dr.Item("PLOSEKundenNr")) Dim dt As DataTable = getPartnerKdNrFromFMZOLL_DE(kdnr) If dt IsNot Nothing AndAlso dt.Rows.Count > 0 Then d.MautDE_FlottenPIN = cSqlDb.checkNullStr(dt.Rows(0)("MautDE_FlottenPIN")) d.MautDE_MasterPIN = cSqlDb.checkNullStr(dt.Rows(0)("MautDE_MasterPIN")) d.MautDE_BenutzerNr = cSqlDb.checkNullStr(dt.Rows(0)("MautDE_BenutzerNr")) ' d.MautAT_KartenNr = dt.Rows(0)("MautAT_KartenNr") End If End If dr.Close() End Using End Using Return d Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function getPartnerKdNrFromFMZOLL_IDS(ByVal kdnr As Integer) As String Try Dim d As String = "" Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("SELECT TOP 1 [CustomerCode] FROM [tbl_IDS_Kunden] WHERE [KdNrVERAG]=@KdNrVERAG AND KdNrAlt =0 ORDER BY Zeitstempel DESC ", conn) cmd.Parameters.AddWithValue("@KdNrVERAG", kdnr) Dim dr = cmd.ExecuteReader() If dr.Read Then d = dr.Item("CustomerCode") End If dr.Close() End Using End Using Return d Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function getPartnerKdNrFromFMZOLL_AT(ByVal kdnr As Integer) As String Try Dim d As String = "" Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("SELECT TOP 1 [KartenNr] FROM [Kreditkarten] WHERE [AdressenNr]=@AdressenNr AND KartenNr LIKE '99%' ORDER BY [SSMA_TimeStamp] DESC ", conn) cmd.Parameters.AddWithValue("@AdressenNr", kdnr) Dim dr = cmd.ExecuteReader() If dr.Read Then d = dr.Item("KartenNr") End If dr.Close() End Using End Using Return d Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function getPartnerKdNrFromFMZOLL_DE(ByVal kdnr As Integer) As DataTable Dim myTable As New DataTable Try Dim d As String = "" Using conn As SqlConnection = cSqlDb.GetNewOpenConnection Using cmd As New SqlCommand("SELECT TOP 1 * FROM [KundenSDL] WHERE [KundenNr]=@KundenNr AND SDLNr=201 ", conn) cmd.Parameters.AddWithValue("@KundenNr", kdnr) Dim dr As SqlDataReader = cmd.ExecuteReader() If dr.HasRows Then myTable.Load(dr) dr.Close() End If End Using End Using ' Return d Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return myTable End Function Public Function setPartnerKdNrFromFMZOLL_IDS(ByVal kdnr As Integer, ByVal CustomerCode As String) As Boolean Try Dim d As String = "" Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("begin tran if exists (select * from tbl_IDS_Kunden with (updlock,serializable) where [KdNrVERAG]=@KdNrVERAG AND KdNrAlt = 0 ) " & " begin " & "UPDATE [tbl_IDS_Kunden] SET [CustomerCode]=@CustomerCode,Zeitstempel=@Zeitstempel,Sachbearbeiter=@Sachbearbeiter WHERE [KdNrVERAG]=@KdNrVERAG AND KdNrAlt = 0 " & " End " & " Else " & " begin " & "INSERT INTO tbl_IDS_Kunden " & " ([CustomerCode],[KdNrVERAG] ,[Zeitstempel],[Sachbearbeiter],[KdNrAlt]) " & " VALUES (@CustomerCode,@KdNrVERAG ,@Zeitstempel ,@Sachbearbeiter,@KdNrAlt) " & " End " & " commit tran ", conn) cmd.Parameters.AddWithValue("@KdNrVERAG", kdnr) cmd.Parameters.AddWithValue("@CustomerCode", CustomerCode) cmd.Parameters.AddWithValue("@Zeitstempel", Now.ToShortDateString) cmd.Parameters.AddWithValue("@Sachbearbeiter", VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME) cmd.Parameters.AddWithValue("@KdNrAlt", "0") cmd.ExecuteNonQuery() Return True End Using End Using Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return False End Function Public Function setPartnerKdNrFromFMZOLL_DE(kdNr, txtMautDE_FlottenPIN, txtMautDEMasterPIN, txtMautDE_BenutzerNr) As Boolean Dim sql = "UPDATE [KundenSDL] " & " SET MautDE_FlottenPIN=@MautDE_FlottenPIN,MautDE_MasterPIN=@MautDE_MasterPIN,MautDE_BenutzerNr=@MautDE_BenutzerNr " & " WHERE [KundenNr]=@kdNr AND [SDLNr]=201 " Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand(sql, conn) ' If value = "" Then value = DBNull.Value cmd.Parameters.AddWithValue("@kdNr", kdNr) cmd.Parameters.AddWithValue("@MautDE_FlottenPIN", IIf(txtMautDE_FlottenPIN <> "", txtMautDE_FlottenPIN, DBNull.Value)) cmd.Parameters.AddWithValue("@MautDE_MasterPIN", IIf(txtMautDEMasterPIN <> "", txtMautDEMasterPIN, DBNull.Value)) cmd.Parameters.AddWithValue("@MautDE_BenutzerNr", IIf(txtMautDE_BenutzerNr <> "", txtMautDE_BenutzerNr, DBNull.Value)) Try cmd.ExecuteNonQuery() Return True Catch ex As SqlException VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,, sql) End Try End Using End Using Return False End Function Public Function setPartnerKdNrFromFMZOLL_AT(ByVal kdnr As Integer, ByVal KartenNr As String) As Boolean Try Dim d As String = "" Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("begin tran if exists (select * from Kreditkarten with (updlock,serializable) where AdressenNr=@KdNrVERAG AND KartenNr LIKE '99%' ) " & " begin " & "UPDATE Kreditkarten SET [KartenNr]=@KartenNr,Zeitstempel=@Zeitstempel,Sachbearbeiter=@Sachbearbeiter WHERE AdressenNr=@KdNrVERAG AND KartenNr LIKE '99%' " & " End " & " Else " & " begin " & "INSERT INTO Kreditkarten " & " (AdressenNr,KartenNr,Kartenablaufmonat ,Kartenablaufjahr,Zeitstempel,Sachbearbeiter) " & " VALUES (@KdNrVERAG,@KartenNr ,12,99,@Zeitstempel,@Sachbearbeiter) " & " End " & " commit tran ", conn) cmd.Parameters.AddWithValue("@KdNrVERAG", kdnr) cmd.Parameters.AddWithValue("@KartenNr", KartenNr) cmd.Parameters.AddWithValue("@Zeitstempel", Now) cmd.Parameters.AddWithValue("@Sachbearbeiter", VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME) cmd.ExecuteNonQuery() Return True End Using End Using Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return False End Function Public Function setVollmacht(ByVal kdvm_KundenNr As Integer, ByVal kdvm_kdvmaId As Integer, ByVal kdvm_erhalten As Boolean, ByVal kdvm_archiviert As Boolean, ByVal kdvm_erhalten_Datum As Object, ByVal kdvm_gueltig_bis As Object, ByVal kdvm_vermerk As String, ByVal kdvm_Info As String, ByVal kdvm_datenarchivId As Integer, kdvm_Id As Integer) As Boolean Try Dim d As String = "" Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("begin tran if exists (select * from tblKundenVollmachten with (updlock,serializable) where [kdvm_KundenNr]=@kdvm_KundenNr AND kdvm_Id=@kdvm_Id AND kdvm_Id <> '-1' ) " & " begin " & "UPDATE [tblKundenVollmachten] SET [kdvm_erhalten]=@kdvm_erhalten,[kdvm_archiviert]=@kdvm_archiviert,[kdvm_erhalten_Datum]=@kdvm_erhalten_Datum,[kdvm_gueltig_bis]=@kdvm_gueltig_bis,[kdvm_vermerk]=@kdvm_vermerk,[kdvm_Info]=@kdvm_Info,[kdvm_datenarchivId]=@kdvm_datenarchivId WHERE [kdvm_KundenNr]=@kdvm_KundenNr AND kdvm_Id =@kdvm_Id " & " End " & " Else " & " begin " & "INSERT INTO tblKundenVollmachten " & " ([kdvm_KundenNr],[kdvm_kdvmaId],[kdvm_erhalten],[kdvm_archiviert],[kdvm_erhalten_Datum],[kdvm_gueltig_bis],[kdvm_vermerk],[kdvm_Info],[kdvm_datenarchivId]) " & " VALUES (@kdvm_KundenNr,@kdvm_kdvmaId ,@kdvm_erhalten ,@kdvm_archiviert ,@kdvm_erhalten_Datum,@kdvm_gueltig_bis,@kdvm_vermerk,@kdvm_Info,@kdvm_datenarchivId) " & " End " & " commit tran ", conn) cmd.Parameters.AddWithValue("@kdvm_KundenNr", kdvm_KundenNr) cmd.Parameters.AddWithValue("@kdvm_kdvmaId", kdvm_kdvmaId) cmd.Parameters.AddWithValue("@kdvm_erhalten", kdvm_erhalten) cmd.Parameters.AddWithValue("@kdvm_archiviert", kdvm_archiviert) cmd.Parameters.AddWithValue("@kdvm_erhalten_Datum", If(kdvm_erhalten_Datum Is Nothing, DBNull.Value, CDate(kdvm_erhalten_Datum))) cmd.Parameters.AddWithValue("@kdvm_gueltig_bis", If(kdvm_gueltig_bis Is Nothing, DBNull.Value, CDate(kdvm_gueltig_bis))) cmd.Parameters.AddWithValue("@kdvm_vermerk", kdvm_vermerk) cmd.Parameters.AddWithValue("@kdvm_Info", kdvm_Info) cmd.Parameters.AddWithValue("@kdvm_datenarchivId", kdvm_datenarchivId) cmd.Parameters.AddWithValue("@kdvm_Id", kdvm_Id) cmd.ExecuteNonQuery() Return True End Using End Using Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return False End Function Public Function setVollmacht_DSId(ByVal kdvm_KundenNr As Integer, ByVal kdvm_Id As Integer, ByVal kdvm_datenarchivId As Integer) As Boolean Try Dim d As String = "" Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("UPDATE [tblKundenVollmachten] SET [kdvm_datenarchivId]=@kdvm_datenarchivId WHERE [kdvm_KundenNr]=@kdvm_KundenNr AND kdvm_Id =@kdvm_Id ", conn) cmd.Parameters.AddWithValue("@kdvm_KundenNr", kdvm_KundenNr) cmd.Parameters.AddWithValue("@kdvm_Id", kdvm_Id) cmd.Parameters.AddWithValue("@kdvm_datenarchivId", kdvm_datenarchivId) cmd.ExecuteNonQuery() Return True End Using End Using Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return False End Function Public Function setVollmachtarchivieren(ByVal kdvm_KundenNr As Integer, ByVal kdvm_kdvmaId As Integer) As Boolean Try Dim d As String = "" Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("UPDATE [tblKundenVollmachten] SET kdvm_archiviert = 1 WHERE [kdvm_KundenNr]=@kdvm_KundenNr AND kdvm_kdvmaId =@kdvm_kdvmaId ", conn) cmd.Parameters.AddWithValue("@kdvm_KundenNr", kdvm_KundenNr) cmd.Parameters.AddWithValue("@kdvm_kdvmaId", kdvm_kdvmaId) cmd.ExecuteNonQuery() Return True End Using End Using Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return False End Function Public Function setVollmachtgeloescht(ByVal kdvm_KundenNr As Integer, ByVal kdvm_Id As Integer, ByVal kdvm_geloescht As Integer) As Boolean Try Dim d As String = "" Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("UPDATE [tblKundenVollmachten] SET kdvm_geloescht = @kdvm_geloescht WHERE [kdvm_KundenNr]=@kdvm_KundenNr AND kdvm_Id =@kdvm_Id ", conn) cmd.Parameters.AddWithValue("@kdvm_KundenNr", kdvm_KundenNr) cmd.Parameters.AddWithValue("@kdvm_Id", kdvm_Id) cmd.Parameters.AddWithValue("@kdvm_geloescht", kdvm_geloescht) cmd.ExecuteNonQuery() Return True End Using End Using Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return False End Function Public Function setPartnerKdNrFromFMZOLL(ByVal columnName As String, ByVal value As Object, ByVal AdressenNr As String) As Boolean Dim sql = "UPDATE Adressen " & " SET [" & columnName & "]=@value " & " WHERE AdressenNr=@AdressenNr " Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand(sql, conn) If value = "" Then value = DBNull.Value cmd.Parameters.AddWithValue("@AdressenNr", AdressenNr) cmd.Parameters.AddWithValue("@columnName", columnName) cmd.Parameters.AddWithValue("@value", value) Try cmd.ExecuteNonQuery() Return True Catch ex As SqlException VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,, sql) End Try End Using End Using Return False End Function Public Function setPartnerKdNrSDL(ByVal columnName As String, ByVal value As Object, ByVal KundenNr As String, ByVal SDLNr As Integer) As Boolean Dim sql = "UPDATE SDL " & " SET [" & columnName & "]=@value " & " WHERE KundenNr=@KundenNr AND SDLNr=@SDLNr" Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand(sql, conn) If value = "" Then value = DBNull.Value cmd.Parameters.AddWithValue("@KundenNr", KundenNr) cmd.Parameters.AddWithValue("@columnName", columnName) cmd.Parameters.AddWithValue("@value", value) cmd.Parameters.AddWithValue("@SDLNr", SDLNr) Try cmd.ExecuteNonQuery() Return True Catch ex As SqlException VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,, sql) End Try End Using End Using Return False End Function Public Function getOfferte() As List(Of cOffert) Try Dim daten As New List(Of cOffert) Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand("SELECT OffertenNr, OffertenBez FROM Offertenstamm ", conn) Dim dr = cmd.ExecuteReader() While dr.Read Dim d As New cOffert d.OffertenNr = dr.Item("OffertenNr") d.OffertenBez = dr.Item("OffertenBez") daten.Add(d) End While dr.Close() End Using End Using Return daten Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function doSQLByList(BindingSource As BindingSource) As Boolean If BindingSource Is Nothing Then Return False Try If BindingSource.Current Is Nothing Then MsgBox("nothing") Return True End If ' Dim BindingSource As BindingSource = s.bindingSource Dim list As New List(Of VERAG_PROG_ALLGEMEIN.MyListItem2) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("RefKundenNr", BindingSource.Current("RefKundenNr"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("MSE-Kd-Nr", BindingSource.Current("MSE-Kd-Nr"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("TELEPASS-Kd-Nr", BindingSource.Current("TELEPASS-Kd-Nr"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("CLIENT-Nr", BindingSource.Current("CLIENT-Nr"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("BestellNr", BindingSource.Current("BestellNr"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("Bestelldatum", BindingSource.Current("Bestelldatum"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("Lieferdatum", BindingSource.Current("Lieferdatum"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("Ausstellungsdatum", BindingSource.Current("Ausstellungsdatum"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("Umstellungsdatum", BindingSource.Current("Umstellungsdatum"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("KartenNr", BindingSource.Current("KartenNr"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("PAN-Nr", BindingSource.Current("PAN-Nr"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("VIACARD", BindingSource.Current("VIACARD"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("MOTORWAY-CARD-Nr", BindingSource.Current("MOTORWAY-CARD-Nr"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("CARD-Nr", BindingSource.Current("CARD-Nr"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("KartenSchlüsselNr", BindingSource.Current("KartenSchlüsselNr"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("FREJUS-CARD-Nr", BindingSource.Current("FREJUS-CARD-Nr"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("ECO", BindingSource.Current("ECO"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("GültigBis", BindingSource.Current("GültigBis"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("OBUID", BindingSource.Current("OBUID"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("SERIE-Nr", BindingSource.Current("SERIE-Nr"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("TELEPASS-Nr", BindingSource.Current("TELEPASS-Nr"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("Vermerk", BindingSource.Current("Vermerk"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("Partner", BindingSource.Current("Partner"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("BenutzerNr", BindingSource.Current("BenutzerNr"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("PIN", BindingSource.Current("PIN"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("FlottenPIN", BindingSource.Current("FlottenPIN"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("MasterPIN", BindingSource.Current("MasterPIN"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("VertragsNr", BindingSource.Current("VertragsNr"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("Vertragsabschlussdatum", BindingSource.Current("Vertragsabschlussdatum"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("Kategorie", BindingSource.Current("Kategorie"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("Schadstoffklasse", BindingSource.Current("Schadstoffklasse"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("Status", BindingSource.Current("Status"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("Ersatzkarte", BindingSource.Current("Ersatzkarte"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("Retourniert", BindingSource.Current("Retourniert"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("RetourniertAm", BindingSource.Current("RetourniertAm"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("Gesperrt", BindingSource.Current("Gesperrt"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("Defekt", BindingSource.Current("Defekt"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("Verloren", BindingSource.Current("Verloren"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("Gestohlen", BindingSource.Current("Gestohlen"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("Erfassungsdatum", BindingSource.Current("Erfassungsdatum"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("Änderungsdatum", BindingSource.Current("Änderungsdatum"))) list.Add(New VERAG_PROG_ALLGEMEIN.MyListItem2("Sachbearbeiter", BindingSource.Current("Sachbearbeiter"))) Dim str As String = "" For Each i In list str &= "[" & i.Text & "] = @" & i.Text.Replace("-", "") & "," Next str = str.Substring(0, str.Length - 1) 'wg. ',' Dim sqlstr = (" UPDATE [SDL] SET " & str & " WHERE KundenNr='" & BindingSource.Current("KundenNr").ToString & "' AND KfzKennzeichen='" & BindingSource.Current("KfzKennzeichen") & "' AND SDLNr='" & BindingSource.Current("SDLNr").ToString & "' AND History='" & BindingSource.Current("History").ToString & "' ") 'LByList(" UPDATE [SDL] ") ' kundenSQL.doSQL(sqlstr) 'MsgBox(sqlstr) Dim conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand(sqlstr, conn) For Each i In list cmd.Parameters.AddWithValue("@" & i.Text.Replace("-", "") & "", i.Value) ' str &= "[" & i.Text & "] = @" & i.Text & "," Next cmd.ExecuteNonQuery() End Using conn.Close() Return True Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try Return False End Function Public Function doSQLInsertSelect(ByVal sql As String, Optional conn_art As String = "SDL") As Integer Dim conn As New SqlConnection Dim i As Integer = -1 Select Case conn_art Case "SDL" : conn = cSqlDb.GetNewOpenConnection() Case "FMZOLL" : conn = cSqlDb.GetNewOpenConnectionFMZOLL() Case "ATLAS" : conn = cSqlDb.GetNewOpenConnectionATLAS Case "ATLAS_SBG" : conn = cSqlDb.GetNewOpenConnectionATLAS_SBG End Select Try Using cmd As New SqlCommand(sql, conn) Dim dr As SqlDataReader = cmd.ExecuteReader() If dr.HasRows Then dr.Read() If Not dr.Item(0) Is DBNull.Value Then i = CStr(dr.Item(0)) End If End If dr.Close() End Using conn.Close() Return i Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return -1 End Function Public Function getSpeditionsdienstleistungen(Optional onlymd As Boolean = False) As List(Of cSpeditionsdienstleistungen) Try Dim daten As New List(Of cSpeditionsdienstleistungen) Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand("SELECT SDLNr, SDLBez FROM Speditionsdienstleistungen " & IIf(onlymd, " WHERE ([SDLTypNr] <=2 OR [SDLTypNr]=5) AND SDLNr NOT IN (204,205,206) ORDER BY SDLBez", ""), conn) Dim dr = cmd.ExecuteReader() While dr.Read Dim d As New cSpeditionsdienstleistungen d.SDLNr = dr.Item("SDLNr") d.SDLBez = dr.Item("SDLBez") daten.Add(d) End While dr.Close() End Using End Using Return daten Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function getSpeditionsdienstleistungenByKdNr(kdnr) As List(Of cSpeditionsdienstleistungen) Try Dim daten As New List(Of cSpeditionsdienstleistungen) Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand("SELECT KundenSDL.SDLNr, Speditionsdienstleistungen.SDLBez,isnull([KundenSDL].[Sperre],0) as Sperre FROM KundenSDL,Speditionsdienstleistungen WHERE KundenSDL.KundenNr='" & kdnr & "' AND Speditionsdienstleistungen.SDLNr=KundenSDL.SDLNr AND Speditionsdienstleistungen.SDLTypNr IN (1,2,5) AND Speditionsdienstleistungen.SDLNr NOT IN (204,205,206) ORDER BY Speditionsdienstleistungen.SDLBez ", conn) Dim dr = cmd.ExecuteReader() While dr.Read Dim d As New cSpeditionsdienstleistungen d.SDLNr = dr.Item("SDLNr") d.SDLBez = dr.Item("SDLBez") d.Sperre = dr.Item("Sperre") daten.Add(d) End While dr.Close() End Using End Using Return daten Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function getFreeVERAG() As String Dim KartenNr As String = "" Try Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand("SELECT TOP 1 [KartenNr] FROM [SDL].[dbo].[Kartenpool] WHERE (KundenNr is null AND KfzKennzeichen is null) or (KundenNr ='' AND KfzKennzeichen ='')", conn) Dim dr = cmd.ExecuteReader() If dr.HasRows Then dr.Read() KartenNr = dr.Item("KartenNr") End If dr.Close() End Using End Using Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return KartenNr End Function Public Function getLKWKfzByKdNr(kdnr) As List(Of String) Try Dim daten As New List(Of String) Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand("SELECT [KfzKennzeichen] FROM LKW WHERE [KundenNr]='" & kdnr & "' ", conn) Dim dr = cmd.ExecuteReader() While dr.Read Dim d As New cSpeditionsdienstleistungen daten.Add(dr.Item("KfzKennzeichen")) End While dr.Close() End Using End Using Return daten Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function insertOffert(ByVal kdnr As Integer, ByVal offertNr As Integer) Try Dim daten As New List(Of cOffert) Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand("INSERT INTO Offerten " & " (KundenNr,OffertenNr) " & " VALUES(@KundenNr,@OffertenNr) ", conn) cmd.Parameters.AddWithValue("@KundenNr", kdnr) cmd.Parameters.AddWithValue("@OffertenNr", offertNr) Try cmd.ExecuteNonQuery() Return True Catch ex As SqlException VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try End Using End Using Return False Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function insertLKW(ByVal kdnr As Integer, ByVal kfz As String, ByVal nat As String) Try Dim daten As New List(Of cOffert) Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand("INSERT INTO [LKW] " & " (KundenNr,KfzKennzeichen,Nationalität,Erfassungsdatum,Sachbearbeiter) " & " VALUES(@KundenNr,@KfzKennzeichen,@Nationalität,@Erfassungsdatum,@Sachbearbeiter) ", conn) cmd.Parameters.AddWithValue("@KundenNr", kdnr) cmd.Parameters.AddWithValue("@KfzKennzeichen", kfz) cmd.Parameters.AddWithValue("@Nationalität", nat) cmd.Parameters.AddWithValue("@Erfassungsdatum", Now) cmd.Parameters.AddWithValue("@Sachbearbeiter", VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME) Try cmd.ExecuteNonQuery() Return True Catch ex As SqlException VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try End Using End Using Return False Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function insertKundenSDL(ByVal kdnr As Integer, ByVal SDLNr As Integer) Try Dim daten As New List(Of cOffert) Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand("INSERT INTO KundenSDL " & " (KundenNr,SDLNr) " & " VALUES(@KundenNr,@SDLNr) ", conn) cmd.Parameters.AddWithValue("@KundenNr", kdnr) cmd.Parameters.AddWithValue("@SDLNr", SDLNr) Try cmd.ExecuteNonQuery() Return True Catch ex As SqlException VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try End Using End Using Return False Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function insertKundeVERAGAdressen(ByVal kdnr As Integer, ordnungsbegriff As String, username As String, Optional Straße As String = "", Optional LandKz As String = "", Optional PLZ As String = "", Optional Ort As String = "", Optional UstIdKz As String = "", Optional UstIdNr As String = "") As Boolean Try Dim daten As New List(Of cOffert) Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("SET ARITHABORT ON", conn) cmd.ExecuteNonQuery() End Using Using cmd As New SqlCommand("INSERT INTO Adressen " & " (AdressenNr,[Ordnungsbegriff],[Name 1],[Eingegeben am],[Sachbearbeiter],Straße,LandKz,PLZ,Ort,UstIdKz,UstIdNr) " & " VALUES(@KundenNr,@ordnungsbegriff,@ordnungsbegriff,@zeitpunkt,@user,@Straße,@LandKz,@PLZ,@Ort,@UstIdKz,@UstIdNr) ", conn) cmd.Parameters.AddWithValue("@KundenNr", kdnr) cmd.Parameters.AddWithValue("@ordnungsbegriff", ordnungsbegriff) cmd.Parameters.AddWithValue("@zeitpunkt", Now) cmd.Parameters.AddWithValue("@user", username) cmd.Parameters.AddWithValue("@Straße", Straße) cmd.Parameters.AddWithValue("@LandKz", LandKz) cmd.Parameters.AddWithValue("@PLZ", PLZ) cmd.Parameters.AddWithValue("@Ort", Ort) cmd.Parameters.AddWithValue("@UstIdKz", VERAG_PROG_ALLGEMEIN.SQL.isNullDBNull(UstIdKz)) cmd.Parameters.AddWithValue("@UstIdNr", VERAG_PROG_ALLGEMEIN.SQL.isNullDBNull(UstIdNr)) Try cmd.ExecuteNonQuery() Return True Catch ex As SqlException VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try End Using End Using Return False Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function insertKundeVERAGKunden(ByVal kdnr As Integer, FilialenNr As String, username As String, Optional EORITIN As String = "", Optional EORITIN_NL As String = "") As Boolean ' Return False 'ÜBERARBEITEN!!!!!!!!! Try Dim daten As New List(Of cOffert) Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("SET ARITHABORT ON", conn) cmd.ExecuteNonQuery() End Using Using cmd As New SqlCommand("INSERT INTO Kunden " & " (KundenNr,KundenNrZentrale,FilialenNr,[Eingegeben am],[Sachbearbeiter],[Währungscode],[Euroeinführung],EORITIN,EORITIN_NL) " & " VALUES(@KundenNr,@KundenNr,@FilialenNr,@zeitpunkt,@user,'EUR','01.01.2002',@EORITIN,@EORITIN_NL) ", conn) cmd.Parameters.AddWithValue("@KundenNr", kdnr) cmd.Parameters.AddWithValue("@FilialenNr", FilialenNr) cmd.Parameters.AddWithValue("@zeitpunkt", Now) cmd.Parameters.AddWithValue("@user", username) cmd.Parameters.AddWithValue("@EORITIN", VERAG_PROG_ALLGEMEIN.SQL.isNullDBNull(EORITIN)) cmd.Parameters.AddWithValue("@EORITIN_NL", VERAG_PROG_ALLGEMEIN.SQL.isNullDBNull(EORITIN_NL)) Try cmd.ExecuteNonQuery() Return True Catch ex As SqlException VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try End Using End Using Return False Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function insertKundeVERAGKundenSDL(ByVal kdnr As Integer, ordnungsbegriff As String) As Boolean ' Return False 'ÜBERARBEITEN!!!!!!!!! Try Dim daten As New List(Of cOffert) Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand("SET ARITHABORT ON", conn) cmd.ExecuteNonQuery() End Using Using cmd As New SqlCommand("INSERT INTO SDL.dbo.Kunden " & " (KundenNr,[Erfassungsdatum],[Sachbearbeiter],Kurzname) " & " VALUES(@KundenNr,@zeitpunkt,@user,@ordnungsbegriff) ", conn) cmd.Parameters.AddWithValue("@KundenNr", kdnr) cmd.Parameters.AddWithValue("@zeitpunkt", Now) cmd.Parameters.AddWithValue("@user", VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME) cmd.Parameters.AddWithValue("@ordnungsbegriff", ordnungsbegriff) Try cmd.ExecuteNonQuery() Return True Catch ex As SqlException VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try End Using End Using Return False Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public LAST_SDL_HISTORY As Integer = -1 Public Function insertSDLBykdNrKz(ByVal kdnr As String, ByVal KfzKennzeichen As String, ByVal SDLNr As String) As Integer Try Dim daten As New List(Of cOffert) Dim History = getValueTxtBySql("SELECT isnull(max([History]),0)+1 as History FROM SDL where KundenNr = '" & kdnr & "' And SDLNr ='" & SDLNr & "' ", "SDL") If History = "" Then Return False Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand("INSERT INTO SDL " & " (KundenNr,KfzKennzeichen,SDLNr,History,Erfassungsdatum,Bestelldatum,Sachbearbeiter,Ersatzkarte, Gesperrt, Defekt, Verloren, Gestohlen) " & " VALUES(@KundenNr,@KfzKennzeichen,@SDLNr, @History ,@Erfassungsdatum,@Bestelldatum,@Sachbearbeiter,@Ersatzkarte, @Gesperrt, @Defekt, @Verloren, @Gestohlen) ", conn) cmd.Parameters.AddWithValue("@KundenNr", kdnr) cmd.Parameters.AddWithValue("@KfzKennzeichen", KfzKennzeichen) cmd.Parameters.AddWithValue("@SDLNr", SDLNr) 'cmd.Parameters.AddWithValue("@History", getHoechsteHistoryNr(kdnr, SDLNr)) cmd.Parameters.AddWithValue("@Erfassungsdatum", Now) '.ToString("yyyy-MM-dd HH:mm:ss.SSS")) cmd.Parameters.AddWithValue("@Sachbearbeiter", VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME) cmd.Parameters.AddWithValue("@Bestelldatum", Now.ToShortDateString) '.ToString("yyyy-MM-dd HH:mm:ss.SSS")) cmd.Parameters.AddWithValue("@Ersatzkarte", False) cmd.Parameters.AddWithValue("@Gesperrt", False) cmd.Parameters.AddWithValue("@Defekt", False) cmd.Parameters.AddWithValue("@Verloren", False) cmd.Parameters.AddWithValue("@History", History) cmd.Parameters.AddWithValue("@Gestohlen", False) Try cmd.ExecuteNonQuery() LAST_SDL_HISTORY = History Return True Catch ex As SqlException VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try End Using End Using Return False Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function getHoechsteHistoryNr(ByVal kdnr As String, ByVal SDLNr As String) As Integer Try Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand("SELECT TOP 1 ISNULL([History],0) as History FROM SDL where KundenNr = @KundenNr And SDLNr =@SDLNr order by History desc", conn) cmd.Parameters.AddWithValue("@KundenNr", kdnr) cmd.Parameters.AddWithValue("@SDLNr", SDLNr) Dim dr = cmd.ExecuteReader() If dr.HasRows Then dr.Read() If IsNumeric(dr.Item("History")) Then Return (CInt(dr.Item("History")) + 1) End If dr.Close() End Using End Using Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return 1 End Function Public Function delSDLBykdNrKz(ByVal kdnr As String, ByVal KfzKennzeichen As String, ByVal SDLNr As String, ByVal History As String) As Boolean Try Dim daten As New List(Of cOffert) Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand("DELETE FROM SDL WHERE KundenNr=@KundenNr AND KfzKennzeichen=@KfzKennzeichen AND SDLNr=@SDLNr AND History=@History ", conn) cmd.Parameters.AddWithValue("@KundenNr", kdnr) cmd.Parameters.AddWithValue("@KfzKennzeichen", KfzKennzeichen) cmd.Parameters.AddWithValue("@SDLNr", SDLNr) cmd.Parameters.AddWithValue("@History", History) Try cmd.ExecuteNonQuery() Return True Catch ex As SqlException VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try End Using End Using Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return False End Function Public Function delOffert(ByVal kdnr As Integer, ByVal offertNr As Integer) Try Dim daten As New List(Of cOffert) Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand("DELETE FROM Offerten WHERE KundenNr=@KundenNr AND OffertenNr=@OffertenNr ", conn) cmd.Parameters.AddWithValue("@KundenNr", kdnr) cmd.Parameters.AddWithValue("@OffertenNr", offertNr) Try cmd.ExecuteNonQuery() Return True Catch ex As SqlException VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try End Using End Using Return False Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function delKundenSDL(ByVal kdnr As Integer, ByVal SDLNr As Integer) Try Dim daten As New List(Of cOffert) Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand("DELETE FROM KundenSDL WHERE KundenNr=@KundenNr AND SDLNr=@SDLNr ", conn) cmd.Parameters.AddWithValue("@KundenNr", kdnr) cmd.Parameters.AddWithValue("@SDLNr", SDLNr) Try cmd.ExecuteNonQuery() Return True Catch ex As SqlException VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try End Using End Using Return False Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function getOfferteByKdNr(ByVal kdnr As Integer) As List(Of cOffert) Try Dim daten As New List(Of cOffert) Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand("SELECT Offertenstamm.OffertenNr, Offertenstamm.OffertenBez FROM Kunden,Offerten,Offertenstamm WHERE Offerten.KundenNr=" & kdnr & " AND Kunden.KundenNr=Offerten.KundenNr ", conn) cmd.Parameters.AddWithValue("@KundenNr", kdnr) Dim dr = cmd.ExecuteReader() While dr.Read Dim d As New cOffert d.OffertenNr = dr.Item("OffertenNr") d.OffertenBez = dr.Item("OffertenBez") daten.Add(d) End While dr.Close() End Using End Using Return daten Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function existByKdNr(ByVal kdnr As Object) As Boolean If kdnr Is Nothing Then Return False If Not IsNumeric(kdnr) Then Return False Try Using conn As SqlConnection = cSqlDb.GetNewOpenConnectionFMZOLL() Using cmd As New SqlCommand("SELECT TOP 1 KundenNr FROM Kunden WHERE KundenNr=" & kdnr, conn) Dim dr = cmd.ExecuteReader() If dr.Read Then dr.Close() Return True Else Return False End If End Using End Using Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return False End Function Public Class WcNr Property wcnr_exists As Boolean = False Property wcnr As String = "" Property txtart As String = "" Property text As String = "" End Class Public Function existByWarencodeNummer(ByVal wcnr As String, connArt As String) As WcNr Dim d As New WcNr d.wcnr = wcnr Try Dim conn As SqlConnection Select Case connArt Case "ATLAS" : conn = cSqlDb.GetNewOpenConnectionATLAS Case "ATLAS_SBG" : conn = cSqlDb.GetNewOpenConnectionATLAS_SBG End Select Using cmd As New SqlCommand("SELECT TOP 1 [ezttxt_txtart],[ezttxt_text] FROM [atlas].[dbo].[ezttxt] WHERE ezttxt_code='" & wcnr & "' AND [ezttxt_datbeg] <= GETDATE() ORDER BY [ezttxt_datbeg] desc ", conn) 'cmd.Parameters.Add("@wcnr", wcnr) Dim dr = cmd.ExecuteReader() If dr.HasRows Then dr.Read() d.wcnr_exists = True d.txtart = dr.Item("ezttxt_txtart").ToString d.text = dr.Item("ezttxt_text").ToString End If dr.Close() End Using Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return d End Function Public Function getSpeditionsdienstleistungByKzKdnr(ByVal kdnr As String, ByVal kz As String) As cSpeditionsdienstleistung Try Dim d As New cSpeditionsdienstleistung Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand("SELECT TOP 1 * FROM SDL WHERE KundenNr=@KundenNr AND KfzKennzeichen=@KfzKennzeichen ", conn) cmd.Parameters.AddWithValue("@KundenNr", kdnr) cmd.Parameters.AddWithValue("@KfzKennzeichen", kz) Dim dr = cmd.ExecuteReader() If dr.Read Then d.KundenNr = cSqlDb.checkNullInteger(dr.Item("KundenNr")) d.KfzKennzeichen = cSqlDb.checkNullStr(dr.Item("KfzKennzeichen")) d.SDLNr = cSqlDb.checkNullInteger(dr.Item("SDLNr")) d.History = cSqlDb.checkNullInteger(dr.Item("History")) d.RefKundenNr = cSqlDb.checkNullStr(dr.Item("RefKundenNr")) d.MSE_Kd_Nr = cSqlDb.checkNullStr(dr.Item("MSE-Kd-Nr")) d.TELEPASS_Kd_Nr = cSqlDb.checkNullStr(dr.Item("TELEPASS-Kd-Nr")) d.CLIENT_Nr = cSqlDb.checkNullStr(dr.Item("CLIENT-Nr")) d.BestellNr = cSqlDb.checkNullStr(dr.Item("BestellNr")) d.Bestelldatum = cSqlDb.checkNullDate(dr.Item("Bestelldatum")) d.Lieferdatum = cSqlDb.checkNullDate(dr.Item("Lieferdatum")) d.Ausstellungsdatum = cSqlDb.checkNullDate(dr.Item("Ausstellungsdatum")) d.Umstellungsdatum = cSqlDb.checkNullDate(dr.Item("Umstellungsdatum")) d.KartenNr = cSqlDb.checkNullStr(dr.Item("KartenNr")) d.PAN_Nr = cSqlDb.checkNullStr(dr.Item("PAN-Nr")) d.VIACARD = cSqlDb.checkNullStr(dr.Item("VIACARD")) d.MOTORWAY_CARD_Nr = cSqlDb.checkNullStr(dr.Item("MOTORWAY-CARD-Nr")) d.CARD_Nr = cSqlDb.checkNullStr(dr.Item("CARD-Nr")) d.KartenSchlüsselNr = cSqlDb.checkNullStr(dr.Item("KartenSchlüsselNr")) d.FREJUS_CARD_Nr = cSqlDb.checkNullStr(dr.Item("FREJUS-CARD-Nr")) d.ECO = cSqlDb.checkNullStr(dr.Item("ECO")) d.GültigBis = cSqlDb.checkNullStr(dr.Item("GültigBis")) d.OBUID = cSqlDb.checkNullStr(dr.Item("OBUID")) d.SERIE_Nr = cSqlDb.checkNullStr(dr.Item("SERIE-Nr")) d.TELEPASS_Nr = cSqlDb.checkNullStr(dr.Item("TELEPASS-Nr")) d.Vermerk = cSqlDb.checkNullStr(dr.Item("Vermerk")) d.Partner = cSqlDb.checkNullStr(dr.Item("Partner")) d.BenutzerNr = cSqlDb.checkNullStr(dr.Item("BenutzerNr")) d.PIN = cSqlDb.checkNullStr(dr.Item("PIN")) d.FlottenPIN = cSqlDb.checkNullStr(dr.Item("FlottenPIN")) d.MasterPIN = cSqlDb.checkNullStr(dr.Item("MasterPIN")) d.VertragsNr = cSqlDb.checkNullStr(dr.Item("VertragsNr")) d.Vertragsabschlussdatum = cSqlDb.checkNullDate(dr.Item("Vertragsabschlussdatum")) d.Kategorie = cSqlDb.checkNullInteger(dr.Item("Kategorie")) d.Schadstoffklasse = cSqlDb.checkNullStr(dr.Item("Schadstoffklasse")) d.Status = cSqlDb.checkNullStr(dr.Item("Status")) d.Ersatzkarte = cSqlDb.checkNullBoolCheckState(dr.Item("Ersatzkarte")) d.Gesperrt = cSqlDb.checkNullBoolCheckState(dr.Item("Gesperrt")) d.Defekt = cSqlDb.checkNullBoolCheckState(dr.Item("Defekt")) d.Verloren = cSqlDb.checkNullBoolCheckState(dr.Item("Verloren")) d.Gestohlen = cSqlDb.checkNullBoolCheckState(dr.Item("Gestohlen")) d.Erfassungsdatum = cSqlDb.checkNullDate(dr.Item("Erfassungsdatum")) d.Änderungsdatum = cSqlDb.checkNullDate(dr.Item("Änderungsdatum")) d.Sachbearbeiter = cSqlDb.checkNullStr(dr.Item("Sachbearbeiter")) End If dr.Close() End Using End Using Return d Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,,,,,) End Try Return Nothing End Function Public Function updateSpeditionsdienstleistung(ByVal d As cSpeditionsdienstleistung) As Boolean Dim sql = "UPDATE SDL " & "SET RefKundenNr=@RefKundenNr,[MSE-Kd-Nr]=@MSE_Kd_Nr,[TELEPASS-Kd-Nr]=@TELEPASS_Kd_Nr,[CLIENT-Nr]=@CLIENT_Nr,BestellNr=@BestellNr,Bestelldatum=@Bestelldatum,Lieferdatum=@Lieferdatum,Umstellungsdatum=@Umstellungsdatum,KartenNr=@KartenNr,[PAN-Nr]=@PAN_Nr,VIACARD=@VIACARD,[MOTORWAY-CARD-Nr]=@MOTORWAY_CARD_Nr,[CARD-Nr]=@CARD_Nr,KartenSchlüsselNr=@KartenSchlüsselNr,[FREJUS-CARD-Nr]=@FREJUS_CARD_Nr,ECO=@ECO,GültigBis=@GültigBis,OBUID=@OBUID,[SERIE-Nr]=@SERIE_Nr,[TELEPASS-Nr]=@TELEPASS_Nr,Vermerk=@Vermerk,Partner=@Partner,BenutzerNr=@BenutzerNr,PIN=@PIN,FlottenPIN=@FlottenPIN,MasterPIN=@MasterPIN,VertragsNr=@VertragsNr,Vertragsabschlussdatum=@Vertragsabschlussdatum,Kategorie=@Kategorie,Schadstoffklasse=@Schadstoffklasse,Status=@Status,Ersatzkarte=@Ersatzkarte,Gesperrt=@Gesperrt,Defekt=@Defekt,Verloren=@Verloren,Gestohlen=@Gestohlen,Erfassungsdatum=@Erfassungsdatum,Änderungsdatum=@Änderungsdatum,Sachbearbeiter=@Sachbearbeiter " & "WHERE KundenNr=@KundenNr AND KfzKennzeichen=@KfzKennzeichen AND SDLNr=@SDLNr " Using conn As SqlConnection = cSqlDb.GetNewOpenConnection() Using cmd As New SqlCommand(sql, conn) cmd.Parameters.AddWithValue("@RefKundenNr", d.RefKundenNr) cmd.Parameters.AddWithValue("@MSE_Kd_Nr", d.MSE_Kd_Nr) cmd.Parameters.AddWithValue("@TELEPASS_Kd_Nr", d.TELEPASS_Kd_Nr) cmd.Parameters.AddWithValue("@CLIENT_Nr", d.CLIENT_Nr) cmd.Parameters.AddWithValue("@BestellNr", d.BestellNr) cmd.Parameters.AddWithValue("@Bestelldatum", cSqlDb.setNullDate(d.Bestelldatum)) cmd.Parameters.AddWithValue("@Lieferdatum", cSqlDb.setNullDate(d.Lieferdatum)) cmd.Parameters.AddWithValue("@Ausstellungsdatum", cSqlDb.setNullDate(d.Ausstellungsdatum)) cmd.Parameters.AddWithValue("@Umstellungsdatum", cSqlDb.setNullDate(d.Umstellungsdatum)) cmd.Parameters.AddWithValue("@KartenNr", d.KartenNr) cmd.Parameters.AddWithValue("@PAN_Nr", d.PAN_Nr) cmd.Parameters.AddWithValue("@VIACARD", d.VIACARD) cmd.Parameters.AddWithValue("@MOTORWAY_CARD_Nr", d.MOTORWAY_CARD_Nr) cmd.Parameters.AddWithValue("@CARD_Nr", d.CARD_Nr) cmd.Parameters.AddWithValue("@KartenSchlüsselNr", d.KartenSchlüsselNr) cmd.Parameters.AddWithValue("@FREJUS_CARD_Nr", d.FREJUS_CARD_Nr) cmd.Parameters.AddWithValue("@ECO", d.ECO) cmd.Parameters.AddWithValue("@GültigBis", d.GültigBis) cmd.Parameters.AddWithValue("@OBUID", d.OBUID) cmd.Parameters.AddWithValue("@SERIE_Nr", d.SERIE_Nr) cmd.Parameters.AddWithValue("@TELEPASS_Nr", d.TELEPASS_Nr) cmd.Parameters.AddWithValue("@Vermerk", d.Vermerk) cmd.Parameters.AddWithValue("@Partner", d.Partner) cmd.Parameters.AddWithValue("@BenutzerNr", d.BenutzerNr) cmd.Parameters.AddWithValue("@PIN", d.PIN) cmd.Parameters.AddWithValue("@FlottenPIN", d.FlottenPIN) cmd.Parameters.AddWithValue("@MasterPIN", d.MasterPIN) cmd.Parameters.AddWithValue("@VertragsNr", d.VertragsNr) cmd.Parameters.AddWithValue("@Vertragsabschlussdatum", cSqlDb.setNullDate(d.Vertragsabschlussdatum)) cmd.Parameters.AddWithValue("@Kategorie", cSqlDb.setNullInteger(d.Kategorie)) cmd.Parameters.AddWithValue("@Schadstoffklasse", d.Schadstoffklasse) cmd.Parameters.AddWithValue("@Status", d.Status) cmd.Parameters.AddWithValue("@Ersatzkarte", cSqlDb.setNullBoolean(d.Ersatzkarte)) cmd.Parameters.AddWithValue("@Gesperrt", cSqlDb.setNullBoolean(d.Gesperrt)) cmd.Parameters.AddWithValue("@Defekt", cSqlDb.setNullBoolean(d.Defekt)) cmd.Parameters.AddWithValue("@Verloren", cSqlDb.setNullBoolean(d.Verloren)) cmd.Parameters.AddWithValue("@Gestohlen", cSqlDb.setNullBoolean(d.Gestohlen)) cmd.Parameters.AddWithValue("@Erfassungsdatum", cSqlDb.setNullDate(d.Erfassungsdatum)) cmd.Parameters.AddWithValue("@Änderungsdatum", Now) cmd.Parameters.AddWithValue("@Sachbearbeiter", VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME) 'WHERE cmd.Parameters.AddWithValue("@KundenNr", d.KundenNr) cmd.Parameters.AddWithValue("@KfzKennzeichen", d.KfzKennzeichen) cmd.Parameters.AddWithValue("@SDLNr", d.SDLNr) Try cmd.ExecuteNonQuery() Return True Catch ex As SqlException VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try End Using End Using Return False End Function End Class