2670 lines
124 KiB
VB.net
2670 lines
124 KiB
VB.net
Imports System.Data
|
|
'Imports Gemeinsames
|
|
Imports VERAG_PROG_ALLGEMEIN.cMeineFunktionenAVISO
|
|
Imports VERAG_PROG_ALLGEMEIN.cGlobal
|
|
Imports System.Data.SqlClient
|
|
Imports System.Globalization
|
|
|
|
|
|
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 GetATLASConnectionString() As String
|
|
Return VERAG_PROG_ALLGEMEIN.SQL.GetATLASConnectionString
|
|
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() & CStr(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() & CStr(If(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 GetNewOpenConnectionEZOLL() As SqlConnection
|
|
Dim cn As New SqlConnection()
|
|
cn.ConnectionString = GetEZOLLConnectionString()
|
|
|
|
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 CBool(o) = True Then Return 1
|
|
If CBool(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 False
|
|
Try
|
|
Return CBool(o)
|
|
Catch ex As Exception
|
|
End Try
|
|
Return False
|
|
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 cDatenbankAVISO
|
|
|
|
|
|
Public Shared GlobalConnection As SqlConnection = Nothing
|
|
Public Shared GlobalConnectionFMZOLL As SqlConnection = Nothing
|
|
|
|
Public Shared Function GetNewOpenConnection(Optional newConn As Boolean = False) As SqlConnection
|
|
Try
|
|
If GlobalConnection Is Nothing Or newConn Then
|
|
GlobalConnection = New SqlConnection(cSqlDb.GetAVISOConnectionString)
|
|
End If
|
|
If GlobalConnection.State = ConnectionState.Broken Or GlobalConnection.State = ConnectionState.Closed Then
|
|
GlobalConnection.Open()
|
|
End If
|
|
Return GlobalConnection
|
|
Catch ex As Exception
|
|
MsgBox("Es konnte keine Verbindung zur Datenbank aufgebaut werden!! " & vbCrLf & vbNewLine & vbCrLf & "Fehler: " & ex.Message & ex.StackTrace)
|
|
End Try
|
|
Return Nothing
|
|
End Function
|
|
|
|
Public Shared Function GetNewOpenConnectionFMZOLL(Optional newConn As Boolean = False) As SqlConnection
|
|
Try
|
|
If GlobalConnectionFMZOLL Is Nothing Or newConn Then
|
|
GlobalConnectionFMZOLL = New SqlConnection(cSqlDb.GetFMZOLLConnectionString)
|
|
End If
|
|
If GlobalConnectionFMZOLL.State = ConnectionState.Broken Or GlobalConnectionFMZOLL.State = ConnectionState.Closed Then
|
|
GlobalConnectionFMZOLL.Open()
|
|
End If
|
|
Return GlobalConnectionFMZOLL
|
|
Catch ex As Exception
|
|
MsgBox("Es konnte keine Verbindung zur Datenbank aufgebaut werden!! " & vbCrLf & vbNewLine & vbCrLf & "Fehler: " & ex.Message)
|
|
End Try
|
|
Return Nothing
|
|
End Function
|
|
|
|
|
|
Public Shared Function GetNewOpenConnectionWithoutError(Optional newConn As Boolean = False) As SqlConnection
|
|
Try
|
|
If GlobalConnection Is Nothing Or newConn Then
|
|
GlobalConnection = New SqlConnection(cSqlDb.GetAVISOConnectionString)
|
|
End If
|
|
If GlobalConnection.State = ConnectionState.Broken Or GlobalConnection.State = ConnectionState.Closed Then
|
|
GlobalConnection.Open()
|
|
End If
|
|
Return GlobalConnection
|
|
Catch ex As Exception
|
|
' MsgBox("Problem" & vbCrLf & vbNewLine & vbCrLf & "Fehler: " & ex.Message)
|
|
End Try
|
|
Return Nothing
|
|
End Function
|
|
Public Shared Function GetNewOpenConnectionADMIN() As SqlConnection
|
|
Try
|
|
Dim conn As New SqlConnection(cSqlDb.GetADMINConnectionString)
|
|
conn.Open()
|
|
Return conn
|
|
Catch ex As Exception
|
|
MsgBox("Es konnte keine Verbindung zur ADMIN-Datenbank aufgebaut werden." & vbCrLf & "connStr=" & cSqlDb.GetAVISOConnectionString & vbCrLf & "Fehler: " & ex.Message)
|
|
End Try
|
|
Return Nothing
|
|
End Function
|
|
|
|
|
|
Public Shared Function GetNewOpenConnection2() As SqlConnection
|
|
'Dim Start As Integer = My.Computer.Clock.TickCount
|
|
Const useGlobalConnection As Boolean = True
|
|
Try
|
|
If useGlobalConnection Then
|
|
If GlobalConnection Is Nothing Then
|
|
GlobalConnection = New SqlConnection
|
|
GlobalConnection.ConnectionString = cSqlDb.GetAVISOConnectionString
|
|
End If
|
|
If GlobalConnection.State = ConnectionState.Broken Or GlobalConnection.State = ConnectionState.Closed Then
|
|
GlobalConnection.Open()
|
|
End If
|
|
'cGlobal.hDauerOpen += My.Computer.Clock.TickCount - Start
|
|
Return GlobalConnection
|
|
Else
|
|
Dim conn As New SqlConnection
|
|
conn.ConnectionString = cSqlDb.GetAVISOConnectionString
|
|
conn.Open()
|
|
'cGlobal.hDauerOpen += 1
|
|
'cGlobal.hDauerOpen += My.Computer.Clock.TickCount - Start
|
|
Return (conn)
|
|
End If
|
|
Catch ex As Exception
|
|
MsgBox("Fehler bei Datenbank öffnen." & vbCrLf & "connStr=" & cSqlDb.GetAVISOConnectionString & vbCrLf & "Fehler: " & ex.Message)
|
|
Return Nothing
|
|
End Try
|
|
End Function
|
|
|
|
End Class
|
|
|
|
|
|
Public Class cMitarbeiterAVISO
|
|
Property MitarbeiterID As Integer
|
|
Property Mitarbeiter As String
|
|
Property Mitarbeitername As String
|
|
Property KW As String
|
|
' Property Sicherheitsstufe As Integer
|
|
Property Info As String
|
|
' Property Grenzstelle As String
|
|
' Property Abteilung As String = ""
|
|
Property StandartFiliale As Integer = -1
|
|
Property mit_FMZollPersID As Integer = -1
|
|
Property mit_username As String
|
|
|
|
End Class
|
|
|
|
Public Class cADMIN
|
|
|
|
' Public USRNAME As String
|
|
'Public USRID As String
|
|
'Public USERBER As String
|
|
Public cMitarbeiterAVISO As cMitarbeiterAVISO
|
|
' Private Property USERBER As Object
|
|
|
|
|
|
|
|
Public Function getAktuelleVersion(Optional progname As String = "AVISO_NEW") As String
|
|
Dim sql As String = "SELECT prog_aktuelleVersion FROM tblProgramme WHERE prog_codename=@codename"
|
|
Dim dr As SqlDataReader
|
|
Using conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnectionADMIN()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@codename", progname)
|
|
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:" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Datenbankfehler")
|
|
Finally
|
|
dr.Close()
|
|
End Try
|
|
End Using
|
|
End Using
|
|
Return "0"
|
|
End Function
|
|
Public Function getPwdFromUsrname(ByVal user As String, ByVal firma As String) As String
|
|
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
|
Return SQL.getValueTxtBySql("SELECT mit_pwd FROM tblMitarbeiter where mit_username='" & user & "' COLLATE Latin1_General_CS_AS AND (mit_firma='" & firma & "' OR mit_firma='ALL' ) ", "ADMIN")
|
|
End Function
|
|
|
|
|
|
Public Function checkLogin(ByVal user As String, ByVal pwd As String, ByVal firma As String) As Boolean
|
|
|
|
VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = If(firma = "", "VERAG", firma)
|
|
|
|
'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,mit_niederlassung,mit_username,mit_pwd,mit_info,mit_abteilung,mit_standartFiliale,mit_FMZollPersID,mit_firmaFMZoll,mit_TESTonly FROM " &
|
|
" tblMitarbeiter,tblBerProg where mit_username=@mit_username and mit_pwd=@mit_pwd COLLATE Latin1_General_CS_AS AND (mit_firma=@mit_firma OR mit_firma='ALL' ) AND bepr_programm=@bepr_programm AND bepr_userId=mit_id "
|
|
|
|
|
|
Dim dr As SqlDataReader
|
|
|
|
Try
|
|
Using conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnectionADMIN()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
|
|
cmd.Parameters.AddWithValue("@mit_username", user)
|
|
cmd.Parameters.AddWithValue("@mit_pwd", pwd)
|
|
cmd.Parameters.AddWithValue("@bepr_programm", "AVISO")
|
|
cmd.Parameters.AddWithValue("@mit_firma", firma)
|
|
|
|
dr = cmd.ExecuteReader()
|
|
cMitarbeiterAVISO = New cMitarbeiterAVISO
|
|
|
|
|
|
If dr.Read Then
|
|
cMitarbeiterAVISO.MitarbeiterID = CInt(dr.Item("mit_id"))
|
|
' cMitarbeiterAVISO.Grenzstelle = CStr(dr.Item("mit_niederlassung"))
|
|
' If cMitarbeiterAVISO.Grenzstelle = "Suben" Then cMitarbeiterAVISO.Grenzstelle = "SUB"
|
|
' If cMitarbeiterAVISO.Grenzstelle = "Waidhaus" Then cMitarbeiterAVISO.Grenzstelle = "WAI"
|
|
' If cMitarbeiterAVISO.Grenzstelle = "Nickelsdorf" Then cMitarbeiterAVISO.Grenzstelle = "NKD"
|
|
' If cMitarbeiterAVISO.Grenzstelle = "Salzburg" Then cMitarbeiterAVISO.Grenzstelle = "SBG"
|
|
' If cMitarbeiterAVISO.Grenzstelle = "" Then cMitarbeiterAVISO.Grenzstelle = "???"
|
|
cMitarbeiterAVISO.Mitarbeiter = CStr(dr.Item("mit_username"))
|
|
cMitarbeiterAVISO.Mitarbeitername = CStr(dr.Item("mit_vname")) & " " & CStr(dr.Item("mit_nname"))
|
|
cMitarbeiterAVISO.KW = CStr(dr.Item("mit_pwd"))
|
|
' cMitarbeiterAVISO.Sicherheitsstufe = CInt(dr.Item("ber_sicherheitsstufe"))
|
|
cMitarbeiterAVISO.Info = CStr(dr.Item("mit_info"))
|
|
' If dr.Item("mit_abteilung") IsNot DBNull.Value Then cMitarbeiterAVISO.Abteilung = CStr(dr.Item("mit_abteilung"))
|
|
cMitarbeiterAVISO.StandartFiliale = VarToInt2(dr.Item("mit_standartFiliale"))
|
|
cMitarbeiterAVISO.mit_FMZollPersID = VarToInt2(dr.Item("mit_FMZollPersID"))
|
|
cMitarbeiterAVISO.mit_username = VarToStr(dr.Item("mit_username"))
|
|
|
|
' VERAG_PROG_ALLGEMEIN.cAllgemein.USRBER = CInt(dr.Item("ber_sicherheitsstufe"))
|
|
VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG = CStr(dr.Item("mit_niederlassung"))
|
|
VERAG_PROG_ALLGEMEIN.cAllgemein.ABTEILUNG = CStr(dr.Item("mit_abteilung"))
|
|
VERAG_PROG_ALLGEMEIN.cAllgemein.USRID = CInt(dr.Item("mit_id"))
|
|
' VERAG_PROG_ALLGEMEIN.cAllgemein.USR_VNAME = CStr(dr.Item("mit_vname"))
|
|
' VERAG_PROG_ALLGEMEIN.cAllgemein.USR_NNAME = CStr(dr.Item("mit_nname"))
|
|
'VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME = CStr(dr.Item("mit_vname")) & " " & CStr(dr.Item("mit_nname"))
|
|
VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME = CStr(dr.Item("mit_username"))
|
|
If dr.Item("mit_firmaFMZoll") Is DBNull.Value Then
|
|
MsgBox("Benutzer muss einer Firma zugeordnet sein!")
|
|
Return False
|
|
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.FIRMA_ID = CInt(dr.Item("mit_firmaFMZoll"))
|
|
VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA_NAME = getValueTxtBySql("SELECT Firma_Bez FROM tblFirma WHERE Firma_ID= " & VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA_ID, "FMZOLL")
|
|
|
|
VERAG_PROG_ALLGEMEIN.cAllgemein.LOAD_BER()
|
|
VERAG_PROG_ALLGEMEIN.cAllgemein.LOAD_DATA()
|
|
|
|
cGlobal.AktiverMitarbeiter = cMitarbeiterAVISO
|
|
|
|
Return True
|
|
End If
|
|
'USERBER = CStr(dr.Item("ber_sicherheitsstufe")) : USRNAME = CStr(dr.Item("mit_vname")) & " " & CStr(dr.Item("mit_nname")) : USRID = CStr(dr.Item("mit_id")) : Return True
|
|
|
|
End Using
|
|
End Using
|
|
dr.Close()
|
|
Catch ex As Exception
|
|
MsgBox("Fehler mit der Datenbankverbindung.", "Datenbankfehler")
|
|
Return False
|
|
End Try
|
|
|
|
Return False
|
|
End Function
|
|
|
|
|
|
|
|
|
|
Public Function getUstName_ByAD(Domain As String, User As String) As String
|
|
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
|
Return SQL.getValueTxtBySql("SELECT TOP 1 [mit_username] FROM [tblMitarbeiter] WHERE [mit_AliasAD_Domain]='" & Domain & "' AND [mit_AliasAD_Username]='" & User & "'", "ADMIN")
|
|
End Function
|
|
|
|
Public Function getBezById(id As Integer) As String
|
|
|
|
Dim sql As String = "SELECT Firma_Bez FROM tblFirma WHERE Firma_ID=@id "
|
|
Dim dr As SqlDataReader
|
|
Try
|
|
Using conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnectionFMZOLL()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@id", id)
|
|
dr = cmd.ExecuteReader()
|
|
If dr.HasRows AndAlso dr.Read Then
|
|
Return CStr(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:" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Datenbankfehler")
|
|
End Try
|
|
Return ""
|
|
End Function
|
|
|
|
|
|
Public Function loadCboBySql(ByVal sql As String, Optional conn_art As String = "AVISO", Optional newConn As Boolean = False, Optional conn As SqlConnection = Nothing) As List(Of Object)
|
|
|
|
|
|
Dim o As New List(Of Object)
|
|
Try
|
|
If conn Is Nothing Then
|
|
Select Case conn_art
|
|
Case "AVISO" : conn = cDatenbankAVISO.GetNewOpenConnection(newConn)
|
|
Case "FMZOLL" : conn = cDatenbankAVISO.GetNewOpenConnectionFMZOLL(newConn)
|
|
End Select
|
|
End If
|
|
' 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
|
|
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message)
|
|
End Try
|
|
|
|
Return Nothing
|
|
End Function
|
|
|
|
Public Function loadCboBySqlWithListItem(ByVal sql As String, Optional showValueInText As Boolean = True, Optional conn_art As String = "AVISO") As List(Of MyListItem)
|
|
Dim o As New List(Of MyListItem)
|
|
Try
|
|
Dim conn As New SqlConnection
|
|
Select Case conn_art
|
|
Case "AVISO" : conn = cDatenbankAVISO.GetNewOpenConnection()
|
|
Case "FMZOLL" : conn = cDatenbankAVISO.GetNewOpenConnectionFMZOLL
|
|
End Select
|
|
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Dim dr As SqlDataReader = cmd.ExecuteReader()
|
|
While dr.Read
|
|
If showValueInText Then
|
|
o.Add(New MyListItem(CStr(dr.Item(0)) & vbTab & " - " & CStr(dr.Item(1)), CStr(dr.Item(0))))
|
|
Else
|
|
Try
|
|
o.Add(New MyListItem(CStr(dr.Item(1)), CStr(dr.Item(0))))
|
|
Catch ex As Exception
|
|
o.Add(New MyListItem(CStr(dr.Item(0)), CStr(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
|
|
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message)
|
|
End Try
|
|
|
|
Return Nothing
|
|
End Function
|
|
|
|
Public Function getValueTxtBySql(ByVal sql As String, Optional conn_art As String = "AVISO") As String
|
|
Dim s As String = ""
|
|
Try
|
|
'MsgBox("1")
|
|
Dim conn As New SqlConnection
|
|
Select Case conn_art
|
|
Case "AVISO" : conn = cDatenbankAVISO.GetNewOpenConnection()
|
|
Case "ADMIN" : conn = cDatenbankAVISO.GetNewOpenConnectionADMIN()
|
|
Case "FMZOLL" : conn = cDatenbankAVISO.GetNewOpenConnectionFMZOLL
|
|
|
|
End Select
|
|
|
|
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
|
|
s = CStr(dr.Item(0))
|
|
End If
|
|
End If
|
|
dr.Close()
|
|
End Using
|
|
conn.Close()
|
|
|
|
Return s
|
|
Catch ex As Exception
|
|
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message)
|
|
End Try
|
|
'MsgBox("3")
|
|
Return ""
|
|
End Function
|
|
|
|
Public Function doSQL(ByVal sql As String, Optional conn_art As String = "AVISO", Optional conn As SqlConnection = Nothing) As Boolean
|
|
If conn Is Nothing Then
|
|
Select Case conn_art
|
|
Case "AVISO" : conn = cDatenbankAVISO.GetNewOpenConnection()
|
|
Case "FMZOLL" : conn = cDatenbankAVISO.GetNewOpenConnectionFMZOLL
|
|
End Select
|
|
End If
|
|
Try
|
|
' MsgBox(sql)
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
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)
|
|
End Try
|
|
Return False
|
|
End Function
|
|
|
|
End Class
|
|
|
|
Public Class cMitarbeiterAVISODAL
|
|
|
|
Public Function LesenMitarbeiter(hID As Integer, hKürzel As String) As cMitarbeiterAVISO
|
|
'falls ID mitgegeben, dann diese laden, ansonsten den anderen Wert suchen
|
|
Dim sql As String
|
|
If hID > 0 Then
|
|
sql = String.Format("SELECT * FROM Mitarbeiter WHERE MitarbeiterID = {0}", hID)
|
|
Else
|
|
sql = String.Format("SELECT * FROM Mitarbeiter WHERE Mitarbeiter = '" & hKürzel.Trim & "'")
|
|
End If
|
|
Dim daten As cMitarbeiterAVISO = Nothing
|
|
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
If dr.HasRows Then
|
|
dr.Read()
|
|
daten = New cMitarbeiterAVISO
|
|
daten.MitarbeiterID = VarToInt(dr.Item("MitarbeiterID"))
|
|
daten.Mitarbeiter = VarToStr(dr.Item("Mitarbeiter"))
|
|
daten.Mitarbeitername = VarToStr(dr.Item("Mitarbeitername"))
|
|
daten.KW = VarToStr(dr.Item("KW"))
|
|
' daten.Sicherheitsstufe = VarToInt(dr.Item("Sicherheitsstufe"))
|
|
daten.Info = VarToStr(dr.Item("Info"))
|
|
' daten.Grenzstelle = VarToStr(dr.Item("Grenzstelle"))
|
|
End If
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
conn.Close()
|
|
Return daten
|
|
End Function
|
|
|
|
Public Function Anzeigen_Mitarbeiter(hSQL As String) As DataTable
|
|
While True 'Endlosschleife; wird verlassen durch Return oder Application.Exit()
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Try
|
|
Dim myTable = New DataTable()
|
|
'Dim sql As String
|
|
'sql = hSQL
|
|
Using cmd As New SqlCommand(hSQL, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
myTable.Load(dr)
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
Return myTable 'While Schleife wird hier verlassen
|
|
Catch ex As Exception
|
|
Dim antwort As MsgBoxResult = MsgBox(ex.Message, CType(MsgBoxStyle.RetryCancel + MsgBoxStyle.Exclamation, MsgBoxStyle),
|
|
"Problem in Function 'Anzeigen_Mitarbeiter'")
|
|
If antwort <> MsgBoxResult.Retry Then
|
|
'Programm wird beendet
|
|
MsgBox("Programm wird aufgrund eines kritischen Problems beendet.", vbInformation)
|
|
Environment.Exit(0)
|
|
End If
|
|
End Try
|
|
conn.Close()
|
|
End While
|
|
Return Nothing
|
|
End Function
|
|
|
|
Public Function Anzeigen_cboMitarbeiter() As DataTable
|
|
While True 'Endlosschleife; wird verlassen durch Return oder Application.Exit()
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Try
|
|
Dim myTable = New DataTable()
|
|
Dim sql = "SELECT MitarbeiterID, Mitarbeiter FROM Mitarbeiter ORDER BY Mitarbeiter"
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
myTable.Load(dr)
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
Return myTable 'While Schleife wird hier verlassen
|
|
Catch ex As Exception
|
|
Dim antwort As MsgBoxResult = MsgBox(ex.Message, CType(MsgBoxStyle.RetryCancel + MsgBoxStyle.Exclamation, MsgBoxStyle),
|
|
"Problem in Function 'Anzeigen_cboMitarbeiter'")
|
|
If antwort <> MsgBoxResult.Retry Then
|
|
'Programm wird beendet
|
|
MsgBox("Programm wird aufgrund eines kritischen Problems beendet.", vbInformation)
|
|
Environment.Exit(0)
|
|
End If
|
|
End Try
|
|
conn.Close()
|
|
End While
|
|
|
|
Return Nothing
|
|
End Function
|
|
|
|
|
|
Public Sub SpeichernMitarbeiter(ByVal d As cMitarbeiterAVISO)
|
|
Dim hAuswahl As String
|
|
If d.MitarbeiterID = 0 Then
|
|
'Neuanlage
|
|
hAuswahl = "INSERT INTO Mitarbeiter " &
|
|
"(Mitarbeiter, Mitarbeitername, KW, Sicherheitsstufe, Info, Grenzstelle) VALUES (" &
|
|
"@Mitarbeiter, @Mitarbeitername, @KW, @Sicherheitsstufe, @Info, @Grenzstelle)"
|
|
Else
|
|
'Änderung
|
|
hAuswahl = String.Format(
|
|
"UPDATE Mitarbeiter SET Mitarbeiter = @Mitarbeiter, Mitarbeitername = @Mitarbeitername, KW=@KW, Sicherheitsstufe=@Sicherheitsstufe, Info=@Info, Grenzstelle=@Grenzstelle " &
|
|
"WHERE MitarbeiterID = @MitarbeiterID")
|
|
End If
|
|
Dim sql = hAuswahl
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@Mitarbeiter", d.Mitarbeiter)
|
|
cmd.Parameters.AddWithValue("@Mitarbeitername", d.Mitarbeitername)
|
|
cmd.Parameters.AddWithValue("@KW", d.KW)
|
|
' cmd.Parameters.AddWithValue("@Sicherheitsstufe", d.Sicherheitsstufe)
|
|
cmd.Parameters.AddWithValue("@Info", d.Info)
|
|
' cmd.Parameters.AddWithValue("@Grenzstelle", d.Grenzstelle)
|
|
cmd.Parameters.AddWithValue("@MitarbeiterID", d.MitarbeiterID)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Speichern Mitarbeiterstamm")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
Public Sub LöschenMitarbeiter(ByVal hID As Integer)
|
|
Dim sql = String.Format("DELETE FROM Mitarbeiter WHERE MitarbeiterID = {0}", hID)
|
|
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Mitarbeiter-Stammdaten können nicht gelöscht werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Löschen")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
End Class
|
|
|
|
|
|
Public Class cFirma
|
|
Property FirmaID As Integer
|
|
Property Firma As String
|
|
Property eMail As String
|
|
Property eMail2 As String
|
|
Property Info As String
|
|
Property Frächter As Boolean
|
|
Property Auftraggeber As Boolean
|
|
Property FMZollKdnr As String = ""
|
|
|
|
'Property Adresse As String
|
|
'Property Telefon As String
|
|
'Property Fax As String
|
|
'Property Ansprechpersonen As String
|
|
End Class
|
|
|
|
Public Class cFirmenDAL
|
|
|
|
Public Function LesenFirma(hID As Integer, hFirma As String, hSQL As String) As cFirma
|
|
'falls ID mitgegeben, dann diese laden, ansonsten den anderen Wert suchen
|
|
Dim sql As String
|
|
If hID > 0 Then
|
|
sql = String.Format("SELECT * FROM Firmen WHERE FirmaID = {0}", hID)
|
|
ElseIf hFirma <> "" Then
|
|
sql = String.Format("SELECT * FROM Firmen WHERE Firma = '" & hFirma.Trim & "'")
|
|
Else
|
|
sql = hSQL
|
|
End If
|
|
Dim daten As cFirma = Nothing
|
|
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
If dr.HasRows Then
|
|
dr.Read()
|
|
daten = New cFirma()
|
|
daten.FirmaID = VarToInt(dr.Item("FirmaID"))
|
|
daten.Firma = VarToStr(dr.Item("Firma"))
|
|
daten.eMail = VarToStr(dr.Item("eMail"))
|
|
daten.eMail2 = VarToStr(dr.Item("eMail2"))
|
|
daten.Info = VarToStr(dr.Item("Info"))
|
|
daten.Frächter = VarToBool(dr.Item("Frächter"))
|
|
daten.Auftraggeber = VarToBool(dr.Item("Auftraggeber"))
|
|
'daten.FMZollKdnr = VarToStr(dr.Item("KundenNr"))
|
|
If Not dr.Item("KundenNr") Is DBNull.Value Then daten.FMZollKdnr = CStr(dr.Item("KundenNr"))
|
|
'daten.Ansprechpersonen = VarToStr(dr.Item("Ansprechpersonen"))
|
|
'daten.Adresse = VarToStr(dr.Item("Adresse"))
|
|
'daten.Telefon = VarToStr(dr.Item("Telefon"))
|
|
'daten.Fax = VarToStr(dr.Item("Fax"))
|
|
End If
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
conn.Close()
|
|
Return daten
|
|
End Function
|
|
|
|
Public Function Anzeigen_Firmen(hSQL As String) As DataTable
|
|
While True 'Endlosschleife; wird verlassen durch Return oder Application.Exit()
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Try
|
|
Dim myTable = New DataTable()
|
|
'Dim sql As String
|
|
'sql = hSQL
|
|
Using cmd As New SqlCommand(hSQL, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
myTable.Load(dr)
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
Return myTable 'While Schleife wird hier verlassen
|
|
Catch ex As Exception
|
|
Dim antwort As MsgBoxResult = MsgBox(ex.Message, CType(MsgBoxStyle.RetryCancel + MsgBoxStyle.Exclamation, MsgBoxStyle),
|
|
"Problem in Function 'Anzeigen_Firmen'")
|
|
If antwort <> MsgBoxResult.Retry Then
|
|
'Programm wird beendet
|
|
MsgBox("Programm wird aufgrund eines kritischen Problems beendet.", vbInformation)
|
|
Environment.Exit(0)
|
|
End If
|
|
End Try
|
|
conn.Close()
|
|
End While
|
|
Return Nothing
|
|
End Function
|
|
|
|
Public Function Anzeigen_cboFirmen(hSQL As String) As DataTable
|
|
While True 'Endlosschleife; wird verlassen durch Return oder Application.Exit()
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Try
|
|
Dim myTable = New DataTable()
|
|
If hSQL = "" Then hSQL = "SELECT FirmaID, Firma FROM Firmen ORDER BY Firma"
|
|
Using cmd As New SqlCommand(hSQL, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
myTable.Load(dr)
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
Return myTable 'While Schleife wird hier verlassen
|
|
Catch ex As Exception
|
|
Dim antwort As MsgBoxResult = MsgBox(ex.Message, CType(MsgBoxStyle.RetryCancel + MsgBoxStyle.Exclamation, MsgBoxStyle),
|
|
"Problem in Function 'Anzeigen_cboFirma'")
|
|
If antwort <> MsgBoxResult.Retry Then
|
|
'Programm wird beendet
|
|
MsgBox("Programm wird aufgrund eines kritischen Problems beendet.", vbInformation)
|
|
Environment.Exit(0)
|
|
End If
|
|
End Try
|
|
conn.Close()
|
|
End While
|
|
|
|
Return Nothing
|
|
End Function
|
|
|
|
Public Sub SpeichernFirma(ByVal d As cFirma)
|
|
Dim hAuswahl As String
|
|
If d.FirmaID = 0 Then
|
|
'Neuanlage
|
|
hAuswahl = "INSERT INTO Firmen " &
|
|
"(Firma, eMail, eMail2, Info, Frächter, Auftraggeber, KundenNr) VALUES (" &
|
|
"@Firma, @eMail, @eMail2, @Info, @Frächter, @Auftraggeber, @KundenNr)"
|
|
Else
|
|
'Änderung
|
|
hAuswahl = String.Format(
|
|
"UPDATE Firmen SET Firma = @Firma, eMail=@eMail, eMail2=@eMail2, Info=@Info, Frächter=@Frächter, Auftraggeber=@Auftraggeber, KundenNr=@KundenNr " &
|
|
"WHERE FirmaID = @FirmaID")
|
|
End If
|
|
Dim sql = hAuswahl
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@Firma", d.Firma)
|
|
cmd.Parameters.AddWithValue("@eMail", d.eMail)
|
|
cmd.Parameters.AddWithValue("@eMail2", d.eMail2)
|
|
cmd.Parameters.AddWithValue("@Info", d.Info)
|
|
cmd.Parameters.AddWithValue("@Frächter", d.Frächter)
|
|
cmd.Parameters.AddWithValue("@Auftraggeber", d.Auftraggeber)
|
|
cmd.Parameters.AddWithValue("@FirmaID", d.FirmaID)
|
|
If d.FMZollKdnr = "" Then
|
|
cmd.Parameters.AddWithValue("@KundenNr", DBNull.Value)
|
|
Else
|
|
cmd.Parameters.AddWithValue("@KundenNr", d.FMZollKdnr)
|
|
End If
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Speichern Firma")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
Public Sub LöschenFirma(ByVal hID As Integer)
|
|
Dim sql = String.Format("DELETE FROM Firmen WHERE FirmaID = {0}", hID)
|
|
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Firma-Stammdaten können nicht gelöscht werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Löschen")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
End Class
|
|
|
|
|
|
|
|
Public Class cQSAufträge
|
|
Property QS_auftragpos_id As Integer = -1
|
|
Property AvisoID As Integer = -1
|
|
Property QS_Abfertigungsart_ID As Integer = -1
|
|
Property QS_Abfertigungsart_Anzahl As Integer = 0
|
|
End Class
|
|
|
|
Public Class cAviso
|
|
Property AvisoID As Integer
|
|
Property Datum As Date
|
|
Property LKW_Nr As String
|
|
Property Telefonisch As String
|
|
Property Änderungen As String
|
|
Property Info As String
|
|
Property Status As Integer
|
|
Property Auftraggeber As String
|
|
Property Auftraggeber_KdNr As String = ""
|
|
Property Frächter As String
|
|
Property Frächter_KdNr As String = ""
|
|
Property letzterMitarbeiter As String
|
|
Property Ankunft As Date
|
|
Property Freigabe As Date
|
|
Property Vorbereitet As Date
|
|
Property Vorgeschrieben As Date
|
|
Property Dauer As Integer
|
|
Property AvisoEingang As Date
|
|
Property Grenzstelle As String
|
|
Property LKW_fertig As Boolean
|
|
Property Handling As Boolean = False
|
|
Property AvisoTVHinweis As String = ""
|
|
Property Sendungen_Gesamtanzahl As Integer = 0
|
|
Property Sammelakt As Boolean = False
|
|
Property Buero As String = ""
|
|
Property ImEx As String = ""
|
|
Property Abgeschlossen As Boolean = False
|
|
Property FIRMA As String = VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
|
|
|
|
Property Durchgangszollstelle1 As Object = Nothing
|
|
Property Durchgangszollstelle2 As Object = Nothing
|
|
Property Durchgangszollstelle3 As Object = Nothing
|
|
Property Durchgangszollstelle4 As Object = Nothing
|
|
Property Durchgangszollstelle5 As Object = Nothing
|
|
Property Durchgangszollstelle6 As Object = Nothing
|
|
Property Ausgangszollstelle As Object = Nothing
|
|
Property Zollstelle As Object = Nothing
|
|
|
|
|
|
Property TransportTemperatur As Object = Nothing
|
|
Property Zugmaschine As Object = Nothing
|
|
Property FahrerHandy As Object = Nothing
|
|
Property LKW_Nationalitaet As Object = Nothing
|
|
Property DakosyRef As Object = Nothing
|
|
Property TeamId As Object = Nothing
|
|
|
|
|
|
Sub UPDATE_FahrerHandy(FahrerHandy As String)
|
|
If AvisoID <= 0 Then Exit Sub
|
|
If If(FahrerHandy, "") = "" Then Exit Sub
|
|
Me.FahrerHandy = FahrerHandy
|
|
|
|
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
|
SQL.doSQL("UPDATE AVISO SET FahrerHandy='" & FahrerHandy & "' WHERE AvisoId=" & AvisoID, "AVISO")
|
|
End Sub
|
|
End Class
|
|
|
|
Public Class cDruckAviso
|
|
Property Datum As String
|
|
Property Status As String
|
|
Property LetzterMitarbeiter As String
|
|
Property LKW_Nr As String
|
|
Property Fraechter As String
|
|
Property Auftraggeber As String
|
|
Property Ankunft As String
|
|
Property Freigabe As String
|
|
Property Dauer As String
|
|
Property Info As String
|
|
Property Aenderungen As String
|
|
Property Telefonisch As String
|
|
Property AvisoEingang As String
|
|
Property Grenzstelle As String
|
|
End Class
|
|
|
|
Public Class cAvisoDAL
|
|
|
|
Public Function LesenAviso(hID As Integer, hSQL As String) As cAviso
|
|
'Dim FIRMA = VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
|
|
'falls ID mitgegeben, dann diese laden, ansonsten den anderen Wert suchen
|
|
Dim sql As String
|
|
If hID > 0 Then
|
|
sql = String.Format("SELECT * FROM Aviso WHERE AvisoID = {0} AND Firma='" & VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & "' ", hID)
|
|
Else
|
|
sql = hSQL
|
|
End If
|
|
|
|
Dim daten As cAviso = Nothing
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
If dr.HasRows Then
|
|
dr.Read()
|
|
daten = New cAviso()
|
|
daten.AvisoID = VarToInt(dr.Item("AvisoID"))
|
|
daten.Datum = CDate(VarToDate(dr.Item("Datum")))
|
|
daten.LKW_Nr = VarToStr(dr.Item("LKW_Nr"))
|
|
daten.Telefonisch = VarToStr(dr.Item("Telefonisch"))
|
|
daten.Änderungen = VarToStr(dr.Item("Änderungen"))
|
|
daten.Info = VarToStr(dr.Item("Info"))
|
|
daten.Status = VarToInt(dr.Item("Status"))
|
|
daten.Auftraggeber = VarToStr(dr.Item("Auftraggeber"))
|
|
daten.Auftraggeber_KdNr = CStr(VarToInt(dr.Item("Auftraggeber_KdNr")))
|
|
daten.Frächter_KdNr = CStr(VarToInt(dr.Item("Frächter_KdNr")))
|
|
daten.Frächter = VarToStr(dr.Item("Frächter"))
|
|
daten.letzterMitarbeiter = VarToStr(dr.Item("letzterMitarbeiter"))
|
|
daten.Ankunft = CDate(VarToDate(dr.Item("Ankunft")))
|
|
daten.Freigabe = CDate(VarToDate(dr.Item("Freigabe")))
|
|
daten.Vorbereitet = CDate(VarToDate(dr.Item("Vorbereitet")))
|
|
daten.Vorgeschrieben = CDate(VarToDate(dr.Item("Vorgeschrieben")))
|
|
daten.AvisoEingang = CDate(VarToDate(dr.Item("AvisoEingang")))
|
|
daten.Dauer = VarToInt(dr.Item("Dauer"))
|
|
daten.Grenzstelle = VarToStr(dr.Item("Grenzstelle"))
|
|
daten.LKW_fertig = VarToBool(dr.Item("LKW_fertig"))
|
|
daten.Handling = VarToBool(dr.Item("Handling"))
|
|
daten.AvisoTVHinweis = VarToStr(dr.Item("AvisoTVHinweis"))
|
|
daten.Sammelakt = VarToBool(dr.Item("Sammelakt"))
|
|
daten.Buero = VarToStr(dr.Item("Buero"))
|
|
daten.ImEx = VarToStr(dr.Item("ImEx"))
|
|
daten.Abgeschlossen = VarToBool(dr.Item("Abgeschlossen"))
|
|
daten.FIRMA = VarToStr(dr.Item("FIRMA"))
|
|
daten.Durchgangszollstelle1 = VarToStr(dr.Item("Durchgangszollstelle1"))
|
|
daten.Durchgangszollstelle2 = VarToStr(dr.Item("Durchgangszollstelle2"))
|
|
daten.Durchgangszollstelle3 = VarToStr(dr.Item("Durchgangszollstelle3"))
|
|
daten.Durchgangszollstelle4 = VarToStr(dr.Item("Durchgangszollstelle4"))
|
|
daten.Durchgangszollstelle5 = VarToStr(dr.Item("Durchgangszollstelle5"))
|
|
daten.Durchgangszollstelle6 = VarToStr(dr.Item("Durchgangszollstelle6"))
|
|
daten.Ausgangszollstelle = VarToStr(dr.Item("Ausgangszollstelle"))
|
|
daten.Zollstelle = VarToStr(dr.Item("Zollstelle"))
|
|
daten.TransportTemperatur = VarToStr(dr.Item("TransportTemperatur"))
|
|
daten.Zugmaschine = VarToStr(dr.Item("Zugmaschine"))
|
|
daten.FahrerHandy = VarToStr(dr.Item("FahrerHandy"))
|
|
daten.LKW_Nationalitaet = VarToStr(dr.Item("LKW_Nationalitaet"))
|
|
daten.DakosyRef = VarToStr(dr.Item("DakosyRef"))
|
|
daten.TeamId = If(dr.Item("TeamId") Is DBNull.Value, Nothing, dr.Item("TeamId"))
|
|
|
|
|
|
|
|
End If
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
conn.Close()
|
|
Return daten
|
|
End Function
|
|
|
|
Public Function Suche_LKW(LKW_Nr As String) As String
|
|
'hier wird nachgesehen, wann diese LKW-Nr zuletzt eingetragen war
|
|
Suche_LKW = ""
|
|
Dim sql As String = "SELECT * FROM Aviso WHERE LKW_Nr = '" & LKW_Nr & "' AND Firma='" & VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & "' ORDER BY Datum DESC"
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
If dr.HasRows Then
|
|
dr.Read()
|
|
'Hinweis erfolgt nur, wenn LKW in den letzten 4 Tagen gefahren ist
|
|
If CDate(VarToDate(dr.Item("Datum"))) > Now.AddDays(-4) Then
|
|
Suche_LKW = "Achtung: der LKW mit der Nr. " & LKW_Nr & " wurde bereits vor kurzem eingetragen - und zwar am " &
|
|
Format(CDate(VarToDate(dr.Item("Datum"))), "ddd, dd.MM.yyyy - HH:mm")
|
|
End If
|
|
End If
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
conn.Close()
|
|
Return Suche_LKW
|
|
End Function
|
|
|
|
Public Function Suche_LKWStatus(LKW_Nr As String) As String
|
|
'hier wird nachgesehen, wann diese LKW-Nr zuletzt eingetragen war
|
|
Suche_LKWStatus = ""
|
|
Dim sql As String = "SELECT * FROM Aviso WHERE LKW_Nr = '" & LKW_Nr & "' AND [Status] Not in (1,2) AND Firma='" & VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & "' ORDER BY Datum DESC"
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
If dr.HasRows Then
|
|
dr.Read()
|
|
Suche_LKWStatus = "Achtung: der LKW mit der Nr. " & LKW_Nr & " existiert bereits mit dem Status '" & cGlobal.getStatusText(VarToInt2(dr.Item("Status"))) & "', Eingetragen, am " &
|
|
Format(CDate(VarToDate(dr.Item("Datum"))), "ddd, dd.MM.yyyy - HH:mm")
|
|
End If
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
conn.Close()
|
|
Return Suche_LKWStatus
|
|
End Function
|
|
|
|
Public Function getAvisoInfo(AvisoID As Integer) As String
|
|
Dim Info As String = ""
|
|
Dim sql As String = "SELECT Info FROM Aviso WHERE AvisoID = '" & AvisoID & "' "
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Try
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
If dr.HasRows Then
|
|
dr.Read()
|
|
If Not dr.Item("Info") Is DBNull.Value Then
|
|
Info = dr.Item("Info").ToString
|
|
End If
|
|
End If
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
conn.Close()
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message, CType(MsgBoxStyle.RetryCancel + MsgBoxStyle.Exclamation, MsgBoxStyle), "Problem in Function 'Suche_LKW'")
|
|
End Try
|
|
Return Info
|
|
End Function
|
|
|
|
Public Function VermerkExistsInAvisoByID(AvisoID As Integer, VermerkeCode As Integer) As Boolean
|
|
'hier wird nachgesehen, wann diese LKW-Nr zuletzt eingetragen war
|
|
Dim b As Boolean = False
|
|
Dim sql As String = "SELECT top 1 VermerkID FROM Vermerke WHERE AvisoID = '" & AvisoID & "' AND VermerkeCode = '" & VermerkeCode & "' "
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
If dr.HasRows Then
|
|
b = True
|
|
End If
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
conn.Close()
|
|
Return b
|
|
End Function
|
|
|
|
|
|
|
|
Public Function loadDataTableBySQL(hSQL As String, Optional timeout As Integer = 0) As DataTable
|
|
Try
|
|
Dim myTable = New DataTable()
|
|
Dim conn As SqlConnection = cSqlDb.GetNewOpenConnectionAVISO()
|
|
|
|
' Using conn As SqlConnection = cSqlDb.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(hSQL, 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 & vbNewLine & ex.Message)
|
|
End Try
|
|
|
|
Return Nothing
|
|
End Function
|
|
|
|
Public Function loadDataTableBySQL_OLD(hSQL As String) As DataTable
|
|
' While True 'Endlosschleife; wird verlassen durch Return oder Application.Exit()
|
|
Using conn As New SqlConnection(cSqlDb.GetAVISOConnectionString) '= cDatenbank.GetNewOpenConnection()
|
|
SqlConnection.ClearPool(conn) ' Wenn Beim Drucken die Vorschau abgebrochen wird, tritt ansonsten ein Fehler auf.
|
|
|
|
Try
|
|
conn.Open()
|
|
Dim myTable = New DataTable()
|
|
'Dim sql As String
|
|
'sql = hSQL
|
|
Using cmd As New SqlCommand(hSQL, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
myTable.Load(dr)
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
conn.Close()
|
|
Return myTable 'While Schleife wird hier verlassen
|
|
Catch ex As Exception
|
|
Dim antwort As MsgBoxResult = MsgBox(ex.Message, CType(MsgBoxStyle.RetryCancel + MsgBoxStyle.Exclamation, MsgBoxStyle),
|
|
"Problem in Function 'Anzeigen_Aviso'")
|
|
conn.Close()
|
|
If antwort <> MsgBoxResult.Retry Then
|
|
'Programm wird beendet
|
|
MsgBox("Programm wird aufgrund eines kritischen Problems beendet.", vbInformation)
|
|
' Environment.Exit(0)
|
|
End If
|
|
End Try
|
|
End Using
|
|
'End While
|
|
|
|
Return Nothing
|
|
End Function
|
|
|
|
|
|
Public Function getStandzeitInfo(maId As Integer, von As Integer, bis As Integer, Warnstufe As Integer) As DataTable
|
|
Dim hSQL As String = "SELECT AvisoID,[LKW_Nr], [Ankunft], StandzeitWarnstufe " &
|
|
" FROM Aviso INNERJOIN" &
|
|
" WHERE [Status] = 3 AND LetzterMitarbeiterId = " & maId & " " &
|
|
" AND DATEDIFF(MINUTE, Ankunft, getdate()) between " & von & " AND " & bis & " " &
|
|
" AND (StandzeitWarnstufe is null OR StandzeitWarnstufe < " & Warnstufe & ")"
|
|
|
|
Using conn As New SqlConnection(cSqlDb.GetAVISOConnectionString) '= cDatenbank.GetNewOpenConnection()
|
|
SqlConnection.ClearPool(conn) ' Wenn Beim Drucken die Vorschau abgebrochen wird, tritt ansonsten ein Fehler auf.
|
|
conn.Open()
|
|
Try
|
|
Dim myTable = New DataTable()
|
|
'Dim sql As String
|
|
'sql = hSQL
|
|
Using cmd As New SqlCommand(hSQL, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
myTable.Load(dr)
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
conn.Close()
|
|
Return myTable 'While Schleife wird hier verlassen
|
|
Catch ex As Exception
|
|
Dim antwort As MsgBoxResult = MsgBox(ex.Message, CType(MsgBoxStyle.RetryCancel + MsgBoxStyle.Exclamation, MsgBoxStyle),
|
|
"Problem in Function 'Anzeigen_Aviso'")
|
|
conn.Close()
|
|
If antwort <> MsgBoxResult.Retry Then
|
|
'Programm wird beendet
|
|
MsgBox("Programm wird aufgrund eines kritischen Problems beendet.", vbInformation)
|
|
Environment.Exit(0)
|
|
End If
|
|
End Try
|
|
End Using
|
|
|
|
|
|
Return Nothing
|
|
End Function
|
|
|
|
Public Sub UpdateWarnstufe(ByVal avisoID As Integer, ByVal Warnstufe As Integer)
|
|
|
|
Dim sql = "UPDATE Aviso SET [StandzeitWarnstufe]= @Warnstufe WHERE AvisoID = @AvisoID"
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@Warnstufe", Warnstufe)
|
|
cmd.Parameters.AddWithValue("@AvisoID", avisoID)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler UpdateWarnstufe")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
Public Sub UpdateAvisoTVHinweis(ByVal avisoID As Integer, ByVal AvisoTVHinweis As String)
|
|
|
|
Dim sql = "UPDATE Aviso SET [AvisoTVHinweis]= @AvisoTVHinweis WHERE AvisoID = @AvisoID"
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@AvisoTVHinweis", AvisoTVHinweis)
|
|
cmd.Parameters.AddWithValue("@AvisoID", avisoID)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler UpdateWarnstufe")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
Public Sub addAenderung(AvisoID As Integer, Aenderung_Art As String, Aenderung_Text As String)
|
|
Dim hAuswahl As String = " INSERT INTO Aenderungen " &
|
|
" ([AvisoID], [Datum], [Mitarbeiter], [MitarbeiterId], [Aenderung_Art], [Aenderung_Text]) " &
|
|
" VALUES (@AvisoID, @Datum, @Mitarbeiter, @MitarbeiterId, @Aenderung_Art, @Aenderung_Text)"
|
|
|
|
Dim sql = hAuswahl
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
|
|
cmd.Parameters.AddWithValue("@AvisoID", AvisoID)
|
|
cmd.Parameters.AddWithValue("@Datum", Now)
|
|
cmd.Parameters.AddWithValue("@Mitarbeiter", cGlobal.AktiverMitarbeiter.Mitarbeiter)
|
|
cmd.Parameters.AddWithValue("@MitarbeiterId", cGlobal.AktiverMitarbeiter.MitarbeiterID)
|
|
cmd.Parameters.AddWithValue("@Aenderung_Art", Aenderung_Art)
|
|
cmd.Parameters.AddWithValue("@Aenderung_Text", Aenderung_Text)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Speichern Aenderungen")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
Public Function SpeichernAviso(ByVal d As cAviso) As Integer
|
|
Dim hAuswahl As String
|
|
Dim id As Integer = -1
|
|
If d.AvisoID <= 0 Then
|
|
'Neuanlage
|
|
hAuswahl = "INSERT INTO Aviso " &
|
|
"(Datum, LKW_Nr, Telefonisch, Änderungen, Info, Status, Auftraggeber, Frächter, letzterMitarbeiter, " &
|
|
"Vorbereitet,Vorgeschrieben, Ankunft, Freigabe, Dauer, AvisoEingang, Grenzstelle, LKW_fertig,letzterMitarbeiterId,Handling,Sendungen_Gesamtanzahl,Sammelakt,Frächter_KdNr,Auftraggeber_KdNr,AvisoTVHinweis,Buero,Imex,Abgeschlossen,FIRMA, " &
|
|
" Durchgangszollstelle1,Durchgangszollstelle2,Durchgangszollstelle3,Durchgangszollstelle4,Durchgangszollstelle5,Durchgangszollstelle6,Ausgangszollstelle,Zollstelle,TransportTemperatur,Zugmaschine,FahrerHandy,LKW_Nationalitaet,DakosyRef,TeamId) VALUES (" &
|
|
"@Datum, @LKW_Nr, @Telefonisch, @Änderungen, @Info, @Status, @Auftraggeber, @Frächter, @letzterMitarbeiter, " &
|
|
"@Vorbereitet, @Vorgeschrieben, @Ankunft, @Freigabe, @Dauer, @AvisoEingang, @Grenzstelle, @LKW_fertig,@letzterMitarbeiterId,@Handling,@Sendungen_Gesamtanzahl,@Sammelakt,@Frächter_KdNr,@Auftraggeber_KdNr,@AvisoTVHinweis,@Buero,@Imex,@Abgeschlossen,@FIRMA," &
|
|
"@Durchgangszollstelle1,@Durchgangszollstelle2,@Durchgangszollstelle3,@Durchgangszollstelle4,@Durchgangszollstelle5,@Durchgangszollstelle6,@Ausgangszollstelle,@Zollstelle,@TransportTemperatur,@Zugmaschine,@FahrerHandy,@LKW_Nationalitaet,@DakosyRef,@TeamId); SELECT CAST(scope_identity() AS int);"
|
|
Else
|
|
id = d.AvisoID
|
|
'Änderung
|
|
hAuswahl = String.Format(
|
|
"UPDATE Aviso SET Datum = @Datum, LKW_Nr = @LKW_Nr, Telefonisch=@Telefonisch, Änderungen=@Änderungen, Info=@Info, Status=@Status, Auftraggeber=@Auftraggeber, Frächter=@Frächter, " &
|
|
" letzterMitarbeiter = @letzterMitarbeiter, Vorbereitet=@Vorbereitet,Vorgeschrieben=@Vorgeschrieben, Ankunft = @Ankunft, Freigabe = @Freigabe, Dauer = @Dauer, AvisoEingang = @AvisoEingang, Grenzstelle=@Grenzstelle, LKW_fertig=@LKW_fertig, letzterMitarbeiterId=@letzterMitarbeiterId, Handling=@Handling,Sendungen_Gesamtanzahl=@Sendungen_Gesamtanzahl,Sammelakt=@Sammelakt,Frächter_KdNr=@Frächter_KdNr,Auftraggeber_KdNr=@Auftraggeber_KdNr,AvisoTVHinweis=@AvisoTVHinweis,Buero=@Buero,Imex=@Imex,Abgeschlossen=@Abgeschlossen, " &
|
|
" Durchgangszollstelle1=@Durchgangszollstelle1,Durchgangszollstelle2=@Durchgangszollstelle2,Durchgangszollstelle3=@Durchgangszollstelle3,Durchgangszollstelle4=@Durchgangszollstelle4,Durchgangszollstelle5=@Durchgangszollstelle5,Durchgangszollstelle6=@Durchgangszollstelle6,Ausgangszollstelle=@Ausgangszollstelle,Zollstelle=@Zollstelle,TransportTemperatur=@TransportTemperatur,Zugmaschine=@Zugmaschine,FahrerHandy=@FahrerHandy, LKW_Nationalitaet=@LKW_Nationalitaet, DakosyRef=@DakosyRef,TeamId=@TeamId " &
|
|
" WHERE AvisoID = @AvisoID")
|
|
End If
|
|
|
|
Dim sql = hAuswahl
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
|
|
cmd.Parameters.Add("@Datum", SqlDbType.DateTime).Value = SQLNullDate(d.Datum)
|
|
' cmd.Parameters.AddWithValue("@Datum", SQLNullDate(d.Datum))
|
|
cmd.Parameters.AddWithValue("@LKW_Nr", d.LKW_Nr)
|
|
cmd.Parameters.AddWithValue("@Telefonisch", d.Telefonisch)
|
|
cmd.Parameters.AddWithValue("@Änderungen", d.Änderungen)
|
|
cmd.Parameters.AddWithValue("@Info", d.Info)
|
|
cmd.Parameters.AddWithValue("@Status", d.Status)
|
|
cmd.Parameters.AddWithValue("@Auftraggeber", d.Auftraggeber)
|
|
cmd.Parameters.AddWithValue("@Frächter", d.Frächter)
|
|
cmd.Parameters.AddWithValue("@letzterMitarbeiter", d.letzterMitarbeiter)
|
|
cmd.Parameters.Add("@Vorbereitet", SqlDbType.DateTime).Value = SQLNullDate(d.Vorbereitet)
|
|
cmd.Parameters.Add("@Vorgeschrieben", SqlDbType.DateTime).Value = SQLNullDate(d.Vorgeschrieben)
|
|
cmd.Parameters.Add("@Ankunft", SqlDbType.DateTime2).Value = SQLNullDate(d.Ankunft)
|
|
cmd.Parameters.Add("@Freigabe", SqlDbType.DateTime2).Value = SQLNullDate(d.Freigabe)
|
|
' cmd.Parameters.AddWithValue("@Vorbereitet", SQLNullDate(d.Vorbereitet))
|
|
' cmd.Parameters.AddWithValue("@Vorgeschrieben", SQLNullDate(d.Vorgeschrieben))
|
|
' cmd.Parameters.AddWithValue("@Ankunft", d.Ankunft)
|
|
' cmd.Parameters.AddWithValue("@Freigabe", d.Freigabe)
|
|
|
|
|
|
cmd.Parameters.AddWithValue("@Dauer", d.Dauer)
|
|
cmd.Parameters.Add("@AvisoEingang", SqlDbType.DateTime).Value = SQLNullDate(d.AvisoEingang)
|
|
' cmd.Parameters.AddWithValue("@AvisoEingang", SQLNullDate(d.AvisoEingang))
|
|
|
|
cmd.Parameters.AddWithValue("@Grenzstelle", d.Grenzstelle)
|
|
cmd.Parameters.AddWithValue("@LKW_fertig", d.LKW_fertig)
|
|
cmd.Parameters.AddWithValue("@AvisoID", d.AvisoID)
|
|
cmd.Parameters.AddWithValue("@letzterMitarbeiterId", cGlobal.AktiverMitarbeiter.MitarbeiterID)
|
|
cmd.Parameters.AddWithValue("@Handling", d.Handling)
|
|
cmd.Parameters.AddWithValue("@Sendungen_Gesamtanzahl", d.Sendungen_Gesamtanzahl)
|
|
cmd.Parameters.AddWithValue("@Sammelakt", d.Sammelakt)
|
|
|
|
cmd.Parameters.AddWithValue("@Auftraggeber_KdNr", IIf(IsNumeric(d.Auftraggeber_KdNr), d.Auftraggeber_KdNr, DBNull.Value))
|
|
cmd.Parameters.AddWithValue("@Frächter_KdNr", IIf(IsNumeric(d.Frächter_KdNr), d.Frächter_KdNr, DBNull.Value))
|
|
cmd.Parameters.AddWithValue("@AvisoTVHinweis", d.AvisoTVHinweis)
|
|
cmd.Parameters.AddWithValue("@Buero", If(d.Buero, ""))
|
|
cmd.Parameters.AddWithValue("@Imex", d.ImEx)
|
|
cmd.Parameters.AddWithValue("@Abgeschlossen", d.Abgeschlossen)
|
|
cmd.Parameters.AddWithValue("@FIRMA", d.FIRMA)
|
|
|
|
cmd.Parameters.AddWithValue("@Durchgangszollstelle1", If(d.Durchgangszollstelle1 Is Nothing, DBNull.Value, d.Durchgangszollstelle1))
|
|
cmd.Parameters.AddWithValue("@Durchgangszollstelle2", If(d.Durchgangszollstelle2 Is Nothing, DBNull.Value, d.Durchgangszollstelle2))
|
|
cmd.Parameters.AddWithValue("@Durchgangszollstelle3", If(d.Durchgangszollstelle3 Is Nothing, DBNull.Value, d.Durchgangszollstelle3))
|
|
cmd.Parameters.AddWithValue("@Durchgangszollstelle4", If(d.Durchgangszollstelle4 Is Nothing, DBNull.Value, d.Durchgangszollstelle4))
|
|
cmd.Parameters.AddWithValue("@Durchgangszollstelle5", If(d.Durchgangszollstelle5 Is Nothing, DBNull.Value, d.Durchgangszollstelle5))
|
|
cmd.Parameters.AddWithValue("@Durchgangszollstelle6", If(d.Durchgangszollstelle6 Is Nothing, DBNull.Value, d.Durchgangszollstelle6))
|
|
cmd.Parameters.AddWithValue("@Ausgangszollstelle", If(d.Ausgangszollstelle Is Nothing, DBNull.Value, d.Ausgangszollstelle))
|
|
cmd.Parameters.AddWithValue("@Zollstelle", If(d.Zollstelle Is Nothing, DBNull.Value, d.Zollstelle))
|
|
cmd.Parameters.AddWithValue("@TransportTemperatur", If(d.TransportTemperatur Is Nothing, DBNull.Value, d.TransportTemperatur))
|
|
cmd.Parameters.AddWithValue("@Zugmaschine", If(d.Zugmaschine Is Nothing, DBNull.Value, d.Zugmaschine))
|
|
cmd.Parameters.AddWithValue("@FahrerHandy", If(d.FahrerHandy Is Nothing, DBNull.Value, d.FahrerHandy))
|
|
cmd.Parameters.AddWithValue("@LKW_Nationalitaet", If(d.LKW_Nationalitaet Is Nothing, DBNull.Value, d.LKW_Nationalitaet))
|
|
cmd.Parameters.AddWithValue("@DakosyRef", If(d.DakosyRef Is Nothing, DBNull.Value, d.DakosyRef))
|
|
cmd.Parameters.AddWithValue("@TeamId", If(d.TeamId Is Nothing, DBNull.Value, d.TeamId))
|
|
|
|
|
|
|
|
Try
|
|
If d.AvisoID <= 0 Then
|
|
id = (Convert.ToInt32(cmd.ExecuteScalar()))
|
|
' MsgBox(id)
|
|
Else
|
|
cmd.ExecuteNonQuery()
|
|
End If
|
|
|
|
Catch ex As SqlException
|
|
MsgBox("Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Speichern Aviso")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
|
|
Return id
|
|
|
|
End Function
|
|
|
|
|
|
Public Function setQSAufträge(ByVal daten As List(Of cQSAufträge)) As Boolean
|
|
For Each d As cQSAufträge In daten
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Dim sql As String = " begin tran" &
|
|
" if exists (select * from tblQS_Auftragspositionen with (updlock,serializable) where QS_Abfertigungsart_ID = @QS_Abfertigungsart_ID AND AvisoID = @AvisoID) " &
|
|
" begin " &
|
|
" UPDATE tblQS_Auftragspositionen " &
|
|
" SET QS_Abfertigungsart_Anzahl=@QS_Abfertigungsart_Anzahl " &
|
|
" WHERE QS_Abfertigungsart_ID = @QS_Abfertigungsart_ID AND AvisoID = @AvisoID " &
|
|
" End " &
|
|
" Else " &
|
|
" begin " &
|
|
" INSERT INTO tblQS_Auftragspositionen " &
|
|
" ([AvisoID],[QS_Abfertigungsart_ID],[QS_Abfertigungsart_Anzahl]) " &
|
|
" VALUES(@AvisoID, @QS_Abfertigungsart_ID, @QS_Abfertigungsart_Anzahl) " &
|
|
" End " &
|
|
" commit tran "
|
|
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@AvisoID", d.AvisoID)
|
|
cmd.Parameters.AddWithValue("@QS_Abfertigungsart_ID", d.QS_Abfertigungsart_ID)
|
|
cmd.Parameters.AddWithValue("@QS_Abfertigungsart_Anzahl", d.QS_Abfertigungsart_Anzahl)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox(System.Reflection.MethodInfo.GetCurrentMethod.Name & ": Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Speichern Programm")
|
|
Return False
|
|
End Try
|
|
|
|
End Using
|
|
' conn.Close()
|
|
Next
|
|
|
|
Return True
|
|
End Function
|
|
|
|
|
|
Public Function insertSendungEmpty(ByVal AvisoID As Integer, ByVal PosUnterNr As Integer, ByVal FilialenNr As Integer, ByVal AbfertigungsNr As Object, ByVal UnterNr As Integer, ByVal tblSnd_Abfertigungsart_ID As Object, Optional tblSnd_AuftraggeberKdNr As Object = Nothing, Optional tblSnd_Auftraggeber As Object = Nothing, Optional tblSnd_Fremdspedition As Boolean = False, Optional ByRef sndId As Integer = -1) As Boolean
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Dim sql As String = " INSERT INTO tblSendungen " &
|
|
" ([tblSnd_PosUnterNr],[tblSnd_AvisoID],FilialenNr,AbfertigungsNr,UnterNr,tblSnd_Abfertigungsart_ID,tblSnd_AuftraggeberKdNr,tblSnd_Auftraggeber,tblSnd_Fremdspedition,tblSnd_QS_MA,LetzterMitarbeiterId,LetzterMitarbeiter) " &
|
|
" VALUES(@PosUnterNr,@AvisoID,@FilialenNr,@AbfertigungsNr,@UnterNr,@tblSnd_Abfertigungsart_ID,@tblSnd_AuftraggeberKdNr,@tblSnd_Auftraggeber,@tblSnd_Fremdspedition,@tblSnd_QS_MA,@LetzterMitarbeiterId,@LetzterMitarbeiter) "
|
|
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@AvisoID", AvisoID)
|
|
cmd.Parameters.AddWithValue("@PosUnterNr", PosUnterNr)
|
|
|
|
|
|
cmd.Parameters.AddWithValue("@FilialenNr", FilialenNr)
|
|
cmd.Parameters.AddWithValue("@AbfertigungsNr", AbfertigungsNr)
|
|
cmd.Parameters.AddWithValue("@UnterNr", UnterNr)
|
|
|
|
cmd.Parameters.AddWithValue("@tblSnd_Abfertigungsart_ID", IIf(tblSnd_Abfertigungsart_ID Is Nothing, DBNull.Value, tblSnd_Abfertigungsart_ID))
|
|
cmd.Parameters.AddWithValue("@tblSnd_AuftraggeberKdNr", IIf(tblSnd_AuftraggeberKdNr Is Nothing, DBNull.Value, tblSnd_AuftraggeberKdNr))
|
|
cmd.Parameters.AddWithValue("@tblSnd_Auftraggeber", IIf(tblSnd_Auftraggeber Is Nothing, DBNull.Value, tblSnd_Auftraggeber))
|
|
cmd.Parameters.AddWithValue("@tblSnd_Fremdspedition", tblSnd_Fremdspedition)
|
|
|
|
If VERAG_PROG_ALLGEMEIN.cAllgemein.ABTEILUNG = "QS" Then
|
|
cmd.Parameters.AddWithValue("@tblSnd_QS_MA", VERAG_PROG_ALLGEMEIN.cAllgemein.USRID)
|
|
Else
|
|
cmd.Parameters.AddWithValue("@tblSnd_QS_MA", DBNull.Value)
|
|
End If
|
|
|
|
cmd.Parameters.AddWithValue("@LetzterMitarbeiter", VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME)
|
|
cmd.Parameters.AddWithValue("@LetzterMitarbeiterId", VERAG_PROG_ALLGEMEIN.cAllgemein.USRID)
|
|
|
|
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
|
|
If sndId <= 0 Then
|
|
Dim newcmd As New SqlCommand("SELECT @@IDENTITY", conn)
|
|
sndId = CInt(newcmd.ExecuteScalar)
|
|
End If
|
|
|
|
Catch ex As SqlException
|
|
MsgBox(System.Reflection.MethodInfo.GetCurrentMethod.Name & ": Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Speichern Programm")
|
|
Return False
|
|
End Try
|
|
|
|
End Using
|
|
|
|
Return True
|
|
End Function
|
|
|
|
|
|
Public Function reIndexSendungen(ByVal AvisoID As Integer) As Boolean
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Dim sql As String = " DECLARE @counter int " &
|
|
" SET @counter = 0 " &
|
|
" UPDATE AVISO_new.dbo.tblSendungen " &
|
|
" SET @counter = tblSnd_PosUnterNr = @counter + 1 " &
|
|
" WHERE tblSnd_AvisoID = @AvisoID "
|
|
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@AvisoID", AvisoID)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox(System.Reflection.MethodInfo.GetCurrentMethod.Name & ": Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Speichern Programm")
|
|
Return False
|
|
End Try
|
|
|
|
End Using
|
|
|
|
Return True
|
|
End Function
|
|
|
|
|
|
Public Sub LöschenAviso(ByVal hID As Integer)
|
|
|
|
Exit Sub
|
|
' LöschenAviso_Vermerke(hID)
|
|
' LöschenAviso_Aenderungen(hID)
|
|
LöschenAviso_Aviso(hID)
|
|
End Sub
|
|
|
|
Public Sub LöschenAviso_Vermerke(ByVal hID As Integer)
|
|
Dim sql = String.Format("DELETE FROM Vermerke WHERE AvisoID = {0}", hID)
|
|
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Vermerke-Eintrag kann nicht gelöscht werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Löschen")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
Public Sub LöschenAviso_Aenderungen(ByVal hID As Integer)
|
|
Dim sql = String.Format("DELETE FROM Aenderungen WHERE AvisoID = {0}", hID)
|
|
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Aenderungen-Eintrag kann nicht gelöscht werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Löschen")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
Public Sub LöschenAviso_Aviso(ByVal hID As Integer)
|
|
Dim sql = String.Format("DELETE FROM Aviso WHERE AvisoID = {0}", hID)
|
|
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Aviso-Eintrag kann nicht gelöscht werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Löschen")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
Public Function LeseAvisoFürDruck(hSQL As String, hIntern As Boolean) As List(Of cDruckAviso)
|
|
Dim datenListe As List(Of cDruckAviso) = New List(Of cDruckAviso)
|
|
Dim datensatz As cDruckAviso
|
|
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
|
|
Using cmd As New SqlCommand(hSQL, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
If (dr.HasRows) Then
|
|
While dr.Read()
|
|
datensatz = New cDruckAviso()
|
|
datensatz.Datum = Format(CDate(dr.Item("Datum")), "dd.MM.yyyy")
|
|
Select Case VarToInt(dr.Item("Status"))
|
|
Case cGlobal.Status_Erfasst
|
|
datensatz.Status = "erfasst"
|
|
Case cGlobal.Status_Ankunft
|
|
datensatz.Status = "Ankunft"
|
|
Case cGlobal.Status_Freigegeben
|
|
datensatz.Status = "freigegeben"
|
|
Case cGlobal.Status_NichtEingetroffen
|
|
datensatz.Status = "LKW n.e."
|
|
Case Else
|
|
datensatz.Status = "unbekannt"
|
|
End Select
|
|
datensatz.LetzterMitarbeiter = dr.Item("LetzterMitarbeiter").ToString
|
|
datensatz.LKW_Nr = dr.Item("LKW_Nr").ToString
|
|
datensatz.Fraechter = dr.Item("Frächter").ToString
|
|
datensatz.Auftraggeber = dr.Item("Auftraggeber").ToString
|
|
datensatz.Grenzstelle = dr.Item("Grenzstelle").ToString
|
|
datensatz.Telefonisch = VarToStr(dr.Item("Telefonisch"))
|
|
|
|
|
|
If CDate(VarToDate(dr.Item("Ankunft"))) = LeerDatum Then
|
|
datensatz.Ankunft = ""
|
|
Else
|
|
datensatz.Ankunft = Format(CDate(dr.Item("Ankunft")), "dd.MM. HH:mm")
|
|
End If
|
|
If CDate(VarToDate(dr.Item("Freigabe"))) = LeerDatum Then
|
|
datensatz.Freigabe = ""
|
|
Else
|
|
datensatz.Freigabe = Format(CDate(dr.Item("Freigabe")), "dd.MM. HH:mm")
|
|
End If
|
|
If CDate(VarToDate(dr.Item("AvisoEingang"))) = LeerDatum Then
|
|
datensatz.Freigabe = ""
|
|
Else
|
|
datensatz.Freigabe = Format(CDate(dr.Item("AvisoEingang")), "dd.MM. HH:mm")
|
|
End If
|
|
If VarToInt(dr.Item("Dauer")) = 0 Then
|
|
datensatz.Dauer = ""
|
|
Else
|
|
datensatz.Dauer = Minuten_auf_Text(VarToInt(dr.Item("Dauer")))
|
|
End If
|
|
|
|
If CDate(VarToDate(dr.Item("AvisoEingang"))) = LeerDatum Then
|
|
datensatz.AvisoEingang = ""
|
|
Else
|
|
datensatz.AvisoEingang = Format(CDate(dr.Item("AvisoEingang")), "dd.MM. HH:mm")
|
|
End If
|
|
|
|
datensatz.Grenzstelle = dr.Item("Grenzstelle").ToString
|
|
|
|
'je nach Listenauswahl werden manche Felder unterschiedlich befüllt
|
|
If hIntern Then
|
|
datensatz.Aenderungen = dr.Item("Änderungen").ToString
|
|
datensatz.Info = dr.Item("Info").ToString
|
|
Else
|
|
'das Feld 'Änderungen' wird hier "mißbraucht" (schnelle Lösung)
|
|
If CDate(VarToDate(dr.Item("AvisoEingang"))) = LeerDatum Then
|
|
datensatz.Aenderungen = ""
|
|
Else
|
|
datensatz.Aenderungen = Format(CDate(dr.Item("AvisoEingang")), "dd.MM. HH:mm")
|
|
End If
|
|
|
|
'ins Infofeld kommen die Vermerke
|
|
Dim hVermerke As New cVermerkeDAL
|
|
datensatz.Info = hVermerke.Vermerke_einlesen(VarToInt(dr.Item("AvisoID")))
|
|
|
|
End If
|
|
datenListe.Add(datensatz)
|
|
End While
|
|
End If
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
conn.Close()
|
|
|
|
Return datenListe
|
|
End Function
|
|
|
|
Public Function Check_Nicht_eingetroffen(hSQL As String) As Integer
|
|
'Hier werden alle als Urlaub gekennzeichneten Tage zusammengezählt
|
|
Check_Nicht_eingetroffen = 0
|
|
Dim sql As String = hSQL
|
|
Dim AvisoDAL As New cAvisoDAL
|
|
Using conn As New SqlConnection(cSqlDb.GetAVISOConnectionString)
|
|
Try
|
|
SqlConnection.ClearPool(conn)
|
|
conn.Open()
|
|
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
While dr.Read()
|
|
Dim av As New cAviso
|
|
av = AvisoDAL.LesenAviso(VarToInt(dr.Item("AvisoID")), "")
|
|
av.Änderungen = "automatisch auf 'LKW nicht eingetroffen' gestellt am " & Format(Now, "dd.MM.yyyy HH:mm") & ", da bereits länger als 10 Tage offen" & vbCrLf & av.Änderungen
|
|
av.letzterMitarbeiter = "Automatik"
|
|
av.Status = cGlobal.Status_NichtEingetroffen
|
|
Dim tmpid = AvisoDAL.SpeichernAviso(av)
|
|
AvisoDAL.addAenderung(tmpid, "automatisch auf 'LKW nicht eingetroffen' gestellt", "automatisch auf 'LKW nicht eingetroffen' gestellt am " & Format(Now, "dd.MM.yyyy HH:mm") & ", da bereits länger als 10 Tage offen")
|
|
|
|
Check_Nicht_eingetroffen += 1
|
|
End While
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
|
|
Catch ex As Exception
|
|
MsgBox("Fehler in der Function Check_Nicht_eingetroffen:" & vbCrLf & vbCrLf & ex.Message & vbCrLf & vbCrLf & "Der Vorgang wird abgebrochen!", MsgBoxStyle.Exclamation)
|
|
Check_Nicht_eingetroffen = 0
|
|
Exit Try
|
|
Finally
|
|
conn.Close()
|
|
End Try
|
|
|
|
End Using
|
|
Return Check_Nicht_eingetroffen
|
|
End Function
|
|
|
|
Public Function Anzahl_Aviso_ermitteln(hSQL As String) As Integer
|
|
'Hier werden alle als Urlaub gekennzeichneten Tage zusammengezählt
|
|
Anzahl_Aviso_ermitteln = 0
|
|
Dim sql As String = hSQL
|
|
Dim daten As cAviso = Nothing
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnectionWithoutError()
|
|
Try
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
While dr.Read()
|
|
Anzahl_Aviso_ermitteln += 1
|
|
End While
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
conn.Close()
|
|
Catch ex As Exception
|
|
'MsgBox("Fehler in der Function Anzahl_Aviso_ermitteln:" & vbCrLf & vbCrLf & ex.Message & vbCrLf & vbCrLf & "Der Vorgang wird abgebrochen!", MsgBoxStyle.Exclamation)
|
|
Return 0
|
|
Exit Try
|
|
End Try
|
|
|
|
Return Anzahl_Aviso_ermitteln
|
|
End Function
|
|
|
|
End Class
|
|
|
|
Public Class cVermerk
|
|
Property VermerkID As Integer
|
|
Property AvisoID As Integer
|
|
Property SendungID As Integer = -1
|
|
Property VermerkArt As String = "A"
|
|
Property Datum As Date
|
|
Property Mitarbeiter As String
|
|
Property MitarbeiterId As Integer
|
|
Property Hinweis_Vermerk As String
|
|
Property VermerkCodeId As Integer
|
|
Property Beschreibung As String = ""
|
|
End Class
|
|
|
|
Public Class cVermerkeDAL
|
|
|
|
Public Function LesenVermerk(hID As Integer, hSQL As String) As cVermerk
|
|
'falls ID mitgegeben, dann diese laden, ansonsten den anderen Wert suchen
|
|
Dim sql As String
|
|
If hID > 0 Then
|
|
sql = String.Format("SELECT * FROM Vermerke WHERE VermerkID = {0}", hID)
|
|
Else
|
|
sql = hSQL
|
|
End If
|
|
Dim daten As cVermerk = Nothing
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
If dr.HasRows Then
|
|
dr.Read()
|
|
daten = New cVermerk()
|
|
daten.VermerkID = VarToInt(dr.Item("VermerkID"))
|
|
daten.AvisoID = VarToInt(dr.Item("AvisoID"))
|
|
daten.Datum = CDate(VarToDate(dr.Item("Datum")))
|
|
daten.Hinweis_Vermerk = VarToStr(dr.Item("Hinweis_Vermerk"))
|
|
daten.Mitarbeiter = VarToStr(dr.Item("Mitarbeiter"))
|
|
daten.VermerkCodeId = VarToInt(dr.Item("VermerkeCode"))
|
|
daten.SendungID = VarToInt(dr.Item("SendungID"))
|
|
daten.VermerkArt = VarToStr(dr.Item("VermerkArt"))
|
|
End If
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
conn.Close()
|
|
Return daten
|
|
End Function
|
|
|
|
Public Function Anzeigen_Vermerke(hSQL As String) As DataTable
|
|
While True 'Endlosschleife; wird verlassen durch Return oder Application.Exit()
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Try
|
|
Dim myTable = New DataTable()
|
|
'Dim sql As String
|
|
'sql = hSQL
|
|
Using cmd As New SqlCommand(hSQL, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
myTable.Load(dr)
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
Return myTable 'While Schleife wird hier verlassen
|
|
Catch ex As Exception
|
|
Dim antwort As MsgBoxResult = MsgBox(ex.Message, CType(MsgBoxStyle.RetryCancel + MsgBoxStyle.Exclamation, MsgBoxStyle),
|
|
"Problem in Function 'Anzeigen_Vermerke'")
|
|
' If antwort <> MsgBoxResult.Retry Then
|
|
'Programm wird beendet
|
|
' MsgBox("Programm wird aufgrund eines kritischen Problems beendet.", vbInformation)
|
|
' Environment.Exit(0)
|
|
' End If
|
|
End Try
|
|
conn.Close()
|
|
End While
|
|
|
|
Return Nothing
|
|
End Function
|
|
|
|
|
|
|
|
Public Function loadTableMyAviso(maId As Integer) As DataTable
|
|
' While True 'Endlosschleife; wird verlassen durch Return oder Application.Exit()
|
|
Try
|
|
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Try
|
|
|
|
Dim myTable = New DataTable()
|
|
Dim sql As String = " SELECT AvisoID, [Status],CASE WHEN LetzterMitarbeiterId=@maId then '0' ELSE '1' END as [statVorb], LKW_Nr, Dauer, Datum, AvisoEingang, Ankunft, Grenzstelle, Freigabe, LetzterMitarbeiterId AS maId, CASE WHEN LetzterMitarbeiterId=@maId then '0' ELSE '1' END as Vorbereitung,LetzterMitarbeiter,CASE WHEN [LKW_fertig] = 1 THEN 'OK' ELSE '' END AS [LKW_fertig],AvisoTVHinweis " &
|
|
" FROM Aviso " &
|
|
" WHERE ( Status IN (0, 3, 4, 5) OR ( Status = 1 AND [Abgeschlossen] = 0 )) " &
|
|
" AND Firma='" & VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & "' AND (LetzterMitarbeiterId=@maId OR " &
|
|
" AVISOid IN ( SELECT distinct(tblSnd_AvisoID) FROM [tblSendungen] WHERE tblSnd_inbearbeitung=1 AND tblSnd_Bearbeitung_MaId=@maId) ) " &
|
|
"ORDER BY case " &
|
|
" when [Status] =3 then 0 " &
|
|
" when [Status] =1 then 1 " &
|
|
" when [Status] =99 then 2 " &
|
|
" when [Status] =4 then 3 " &
|
|
" when [Status] =5 then 4 " &
|
|
" when [Status] =0 then 5 " &
|
|
" END, Ankunft "
|
|
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
'Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
Dim adapter As New SqlDataAdapter(cmd)
|
|
|
|
'cmd.CommandType = CommandType.StoredProcedure
|
|
cmd.Parameters.AddWithValue("@maId", maId)
|
|
'Add parameters, e.g.
|
|
adapter.ContinueUpdateOnError = True
|
|
'Get the data.
|
|
adapter.Fill(myTable)
|
|
|
|
|
|
'dr.Close()
|
|
' End Using
|
|
End Using
|
|
Return myTable 'While Schleife wird hier verlassen
|
|
Catch ex As Exception
|
|
|
|
Dim antwort As MsgBoxResult = MsgBox(ex.Message, CType(MsgBoxStyle.RetryCancel + MsgBoxStyle.Exclamation, MsgBoxStyle),
|
|
"Problem in Function 'Anzeigen_Vermerke'")
|
|
' If antwort <> MsgBoxResult.Retry Then
|
|
'Programm wird beendet
|
|
'MsgBox("Programm wird aufgrund eines kritischen Problems beendet.", vbInformation)
|
|
' Environment.Exit(0)
|
|
'End If
|
|
End Try
|
|
conn.Close()
|
|
' End While
|
|
|
|
Catch ex As Exception
|
|
Dim antwort As MsgBoxResult = MsgBox(ex.Message, CType(MsgBoxStyle.RetryCancel + MsgBoxStyle.Exclamation, MsgBoxStyle),
|
|
"Problem in Function 'Anzeigen_Vermerke'")
|
|
|
|
End Try
|
|
Return Nothing
|
|
End Function
|
|
|
|
|
|
Public Function loadTableMyAvisoOLD(maId As Integer) As DataTable
|
|
While True 'Endlosschleife; wird verlassen durch Return oder Application.Exit()
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Try
|
|
|
|
Dim myTable = New DataTable()
|
|
'Dim sql As String
|
|
'sql = hSQL
|
|
' command As New SqlCommand("sproc name here", connection),
|
|
' adapter As New SqlDataAdapter(command)
|
|
|
|
Using cmd As New SqlCommand("spmyaviso2", conn)
|
|
'Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
Dim adapter As New SqlDataAdapter(cmd)
|
|
|
|
cmd.CommandType = CommandType.StoredProcedure
|
|
cmd.Parameters.AddWithValue("@maId", maId)
|
|
'Add parameters, e.g.
|
|
adapter.ContinueUpdateOnError = True
|
|
'Get the data.
|
|
adapter.Fill(myTable)
|
|
|
|
|
|
'dr.Close()
|
|
' End Using
|
|
End Using
|
|
Return myTable 'While Schleife wird hier verlassen
|
|
Catch ex As Exception
|
|
Dim antwort As MsgBoxResult = MsgBox(ex.Message, CType(MsgBoxStyle.RetryCancel + MsgBoxStyle.Exclamation, MsgBoxStyle),
|
|
"Problem in Function 'Anzeigen_Vermerke'")
|
|
If antwort <> MsgBoxResult.Retry Then
|
|
'Programm wird beendet
|
|
MsgBox("Programm wird aufgrund eines kritischen Problems beendet.", vbInformation)
|
|
Environment.Exit(0)
|
|
End If
|
|
End Try
|
|
conn.Close()
|
|
End While
|
|
|
|
Return Nothing
|
|
End Function
|
|
|
|
|
|
Public Sub SpeichernVermerk(ByVal d As cVermerk)
|
|
Dim hAuswahl As String
|
|
If d.VermerkID = 0 Then
|
|
'Neuanlage
|
|
hAuswahl = "INSERT INTO Vermerke " &
|
|
"(AvisoID,VermerkArt,SendungID, Datum, Mitarbeiter, Hinweis_Vermerk, VermerkeCode,MitarbeiterId,Beschreibung) VALUES (@AvisoID,@VermerkArt, @SendungID, @Datum, @Mitarbeiter, @Hinweis_Vermerk, @VermerkeCode,@MitarbeiterId,@Beschreibung)"
|
|
Else
|
|
'Änderung
|
|
hAuswahl = String.Format(
|
|
"UPDATE Vermerke SET AvisoID = @AvisoID, VermerkArt=@VermerkArt,SendungID=@SendungID,Datum = @Datum, Mitarbeiter = @Mitarbeiter, Hinweis_Vermerk = @Hinweis_Vermerk, VermerkeCode = @VermerkeCode, MitarbeiterId=@MitarbeiterId, Beschreibung=@Beschreibung WHERE VermerkID = @VermerkID")
|
|
End If
|
|
Dim sql = hAuswahl
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@AvisoID", d.AvisoID)
|
|
cmd.Parameters.Add("@Datum", SqlDbType.DateTime).Value = SQLNullDate(d.Datum)
|
|
cmd.Parameters.AddWithValue("@Mitarbeiter", d.Mitarbeiter)
|
|
cmd.Parameters.AddWithValue("@Hinweis_Vermerk", d.Hinweis_Vermerk)
|
|
cmd.Parameters.AddWithValue("@VermerkID", d.VermerkID)
|
|
cmd.Parameters.AddWithValue("@VermerkeCode", d.VermerkCodeId)
|
|
cmd.Parameters.AddWithValue("@MitarbeiterId", d.MitarbeiterId)
|
|
cmd.Parameters.AddWithValue("@Beschreibung", d.Beschreibung)
|
|
cmd.Parameters.AddWithValue("@VermerkArt", d.VermerkArt)
|
|
cmd.Parameters.AddWithValue("@SendungID", IIf(d.SendungID > 0, d.SendungID, DBNull.Value))
|
|
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Speichern Vermerk")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
Public Sub UpdateLKW(ByVal avisoID As Integer, ByVal LKW_fertig As Boolean)
|
|
|
|
Dim sql = "UPDATE Aviso SET [LKW_fertig]= @LKW_fertig WHERE AvisoID = @AvisoID"
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@LKW_fertig", LKW_fertig)
|
|
cmd.Parameters.AddWithValue("@AvisoID", avisoID)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Speichern Vermerk")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
Public Sub UpdateSendungVorbereitet(ByVal AvisoID As Integer, ByVal sendungsId As Integer, ByVal MaId As Integer, ByVal inBearbeitung As Boolean)
|
|
|
|
Dim sql = "UPDATE tblSendungen SET tblSnd_inBearbeitung= @inBearbeitung,tblSnd_Bearbeitung_MaId= @MaId WHERE tblSnd_SendungID = @sendungsId"
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@inBearbeitung", inBearbeitung)
|
|
cmd.Parameters.AddWithValue("@MaId", MaId)
|
|
cmd.Parameters.AddWithValue("@sendungsId", sendungsId)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Speichern Vermerk")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
'SetInBearbeitungAVISO(AvisoID)
|
|
End Sub
|
|
|
|
|
|
Public Sub SetInBearbeitungAVISO(ByVal AvisoID As Integer)
|
|
|
|
Dim sql = "UPDATE Aviso SET inBearbeitung= (SELECT CASE WHEN count([tblSnd_inBearbeitung])>0 THEN '1' ELSE '0' END FROM [tblSendungen] where [tblSnd_AvisoID]=@AvisoID) WHERE AvisoID = @AvisoID "
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@AvisoID", AvisoID)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Speichern Vermerk")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
Public Sub UpdateGrenzstelle(ByVal avisoID As Integer, ByVal Grenzstelle As String)
|
|
|
|
Dim sql = "UPDATE Aviso SET [Grenzstelle]= @Grenzstelle WHERE AvisoID = @AvisoID AND Status <> " & cGlobal.Status_Ankunft & ""
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@Grenzstelle", Grenzstelle)
|
|
cmd.Parameters.AddWithValue("@AvisoID", avisoID)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Speichern Vermerk")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
|
|
Public Sub LöschenVermerk(ByVal hID As Integer)
|
|
Dim sql = String.Format("DELETE FROM Vermerke WHERE VermerkID = {0}", hID)
|
|
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Vermerk kann nicht gelöscht werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Löschen")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
Public Function Vermerke_einlesen(hAvisoID As Integer) As String
|
|
'falls ID mitgegeben, dann diese laden, ansonsten den anderen Wert suchen
|
|
Dim x As String = ""
|
|
Dim Anz As Long = 0
|
|
Dim sql As String = "SELECT * FROM Vermerke WHERE AvisoID = " & hAvisoID & " ORDER BY Datum"
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Try
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
While dr.Read()
|
|
x += Format(CDate(dr.Item("Datum")), "dd.MM. HH:mm") & vbTab &
|
|
VarToStr(dr.Item("Hinweis_Vermerk")) & vbCrLf
|
|
Anz += 1
|
|
End While
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
Catch ex As Exception
|
|
MsgBox("Fehler in der Function Vermerke_einlesen:" & vbCrLf & vbCrLf & ex.Message & vbCrLf & vbCrLf & "Der Vorgang wird abgebrochen!", MsgBoxStyle.Exclamation)
|
|
Anz = 0
|
|
Exit Try
|
|
End Try
|
|
conn.Close()
|
|
If Anz = 0 Then x = "keine Vermerke vorhanden"
|
|
|
|
Return x
|
|
|
|
End Function
|
|
|
|
Public Function Druckinfo(hSQL As String) As String
|
|
'Hier werden alle Sonderkorrektur-Einträge des Tages in einem Textfile zusammengefasst (als Info für Druck)
|
|
Druckinfo = ""
|
|
Dim Anz As Integer = 0
|
|
Dim daten As cVermerk = Nothing
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Try
|
|
Using cmd As New SqlCommand(hSQL, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
While dr.Read()
|
|
Anz += 1
|
|
Druckinfo += Format(CDate(dr.Item("Datum")), "dd.MM. HH:mm") & " " &
|
|
VarToStr(dr.Item("Hinweis_Vermerk")) & vbCrLf
|
|
End While
|
|
dr.Close()
|
|
If Anz = 0 Then Druckinfo = "" 'wenn nichts gefunden, dann Druckzeile leer lassen
|
|
End Using
|
|
End Using
|
|
Catch ex As Exception
|
|
Druckinfo = "Es ist ein Fehler beim Lesen der Vermerke aufgetreten."
|
|
Exit Try
|
|
End Try
|
|
conn.Close()
|
|
Return Druckinfo
|
|
End Function
|
|
|
|
End Class
|
|
|
|
|
|
Public Class cAvisoTV
|
|
Property TVID As Long
|
|
Property FixeZeile1 As String
|
|
Property FixeZeile2 As String
|
|
Property FixeZeile3 As String
|
|
End Class
|
|
|
|
Public Class cAvisoTVDAL
|
|
|
|
Public Function LesenAvisoTV(hID As Integer, hSQL As String) As cAvisoTV
|
|
'falls ID mitgegeben, dann diese laden, ansonsten den anderen Wert suchen
|
|
Dim sql As String
|
|
If hID > 0 Then
|
|
sql = String.Format("SELECT * FROM AvisoTV WHERE TVID = {0}", hID)
|
|
Else
|
|
sql = hSQL
|
|
End If
|
|
Dim daten As cAvisoTV = Nothing
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnectionWithoutError()
|
|
Try
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
If dr.HasRows Then
|
|
dr.Read()
|
|
daten = New cAvisoTV()
|
|
daten.TVID = VarToInt(dr.Item("TVID"))
|
|
daten.FixeZeile1 = VarToStr(dr.Item("FixeZeile1"))
|
|
daten.FixeZeile2 = VarToStr(dr.Item("FixeZeile2"))
|
|
daten.FixeZeile3 = VarToStr(dr.Item("FixeZeile3"))
|
|
End If
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
Return daten
|
|
Catch ex As Exception
|
|
Return Nothing
|
|
End Try
|
|
conn.Close()
|
|
|
|
End Function
|
|
|
|
Public Sub SpeichernAvisoTV(ByVal d As cAvisoTV)
|
|
Dim hAuswahl As String
|
|
If d.TVID = 0 Then
|
|
'Neuanlage
|
|
hAuswahl = "INSERT INTO AvisoTV " &
|
|
"(FixeZeile1, FixeZeile2, FixeZeile3) VALUES (@FixeZeile1, @FixeZeile2, @FixeZeile3)"
|
|
Else
|
|
'Änderung
|
|
hAuswahl = String.Format(
|
|
"UPDATE AvisoTV SET FixeZeile1=@FixeZeile1, FixeZeile2=@FixeZeile2, FixeZeile3=@FixeZeile3 WHERE TVID = @TVID")
|
|
End If
|
|
Dim sql = hAuswahl
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@FixeZeile1", d.FixeZeile1)
|
|
cmd.Parameters.AddWithValue("@FixeZeile2", d.FixeZeile2)
|
|
cmd.Parameters.AddWithValue("@FixeZeile3", d.FixeZeile3)
|
|
cmd.Parameters.AddWithValue("@TVID", d.TVID)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Speichern AvisoTV")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
Public Sub LöschenAvisoTV(ByVal hID As Integer)
|
|
Dim sql = String.Format("DELETE FROM AvisoTV WHERE TVID = {0}", hID)
|
|
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("AvisoTV-Eintrag kann nicht gelöscht werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Löschen")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
|
|
End Class
|
|
|
|
Public Class cOption
|
|
Property OptionID As Long
|
|
Property eMail_Ankunft_Betreff As String
|
|
Property eMail_Ankunft_Text As String
|
|
Property eMail_Freigabe_Betreff As String
|
|
Property eMail_Freigabe_Text As String
|
|
End Class
|
|
|
|
Public Class cOptionenDAL
|
|
|
|
Public Function LesenOptionen(hID As Integer, hSQL As String) As cOption
|
|
'falls ID mitgegeben, dann diese laden, ansonsten den anderen Wert suchen
|
|
Dim sql As String
|
|
If hID > 0 Then
|
|
sql = String.Format("SELECT * FROM Optionen WHERE OptionID = {0}", hID)
|
|
Else
|
|
sql = hSQL
|
|
End If
|
|
Dim daten As cOption = Nothing
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
If dr.HasRows Then
|
|
dr.Read()
|
|
daten = New cOption()
|
|
daten.OptionID = VarToInt(dr.Item("OptionID"))
|
|
daten.eMail_Ankunft_Betreff = VarToStr(dr.Item("eMail_Ankunft_Betreff"))
|
|
daten.eMail_Ankunft_Text = VarToStr(dr.Item("eMail_Ankunft_Text"))
|
|
daten.eMail_Freigabe_Betreff = VarToStr(dr.Item("eMail_Freigabe_Betreff"))
|
|
daten.eMail_Freigabe_Text = VarToStr(dr.Item("eMail_Freigabe_Text"))
|
|
End If
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
conn.Close()
|
|
Return daten
|
|
End Function
|
|
|
|
|
|
Public Function setAVISOFromPcName() As Integer
|
|
Dim zeilen As Integer = 0
|
|
Dim sql = String.Format(
|
|
" UPDATE Aviso SET LetzterMitarbeiter = @LetzterMitarbeiter, LetzterMitarbeiterId = @LetzterMitarbeiterId " &
|
|
" WHERE Status IN (" & cGlobal.Status_Ankunft & ") AND LetzterMitarbeiter like '%/" & cAllgemein.USRNAME.ToString & "' " &
|
|
" AND LetzterMitarbeiterId NOT LIKE @LetzterMitarbeiterId")
|
|
' MsgBox(sql)
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@LetzterMitarbeiter", cGlobal.AktiverMitarbeiter.Mitarbeiter & "/" & cAllgemein.USRNAME.ToString)
|
|
cmd.Parameters.AddWithValue("@LetzterMitarbeiterId", cGlobal.AktiverMitarbeiter.MitarbeiterID)
|
|
Try
|
|
zeilen = cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Speichern Firma")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
Return zeilen
|
|
End Function
|
|
|
|
|
|
|
|
Public Sub SpeichernOptionen(ByVal d As cOption)
|
|
Dim hAuswahl As String
|
|
If d.OptionID = 0 Then
|
|
'Neuanlage
|
|
hAuswahl = "INSERT INTO Optionen " &
|
|
"(eMail_Ankunft_Betreff, eMail_Ankunft_Text, eMail_Freigabe_Betreff, eMail_Freigabe_Text) VALUES (@eMail_Ankunft_Betreff, @eMail_Ankunft_Text, @eMail_Freigabe_Betreff, @eMail_Freigabe_Text)"
|
|
Else
|
|
'Änderung
|
|
hAuswahl = String.Format(
|
|
"UPDATE Optionen SET eMail_Ankunft_Betreff=@eMail_Ankunft_Betreff, eMail_Ankunft_Text=@eMail_Ankunft_Text, eMail_Freigabe_Betreff=@eMail_Freigabe_Betreff, eMail_Freigabe_Text=@eMail_Freigabe_Text WHERE OptionID = @OptionID")
|
|
End If
|
|
Dim sql = hAuswahl
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@eMail_Ankunft_Betreff", d.eMail_Ankunft_Betreff)
|
|
cmd.Parameters.AddWithValue("@eMail_Ankunft_Text", d.eMail_Ankunft_Text)
|
|
cmd.Parameters.AddWithValue("@eMail_Freigabe_Betreff", d.eMail_Freigabe_Betreff)
|
|
cmd.Parameters.AddWithValue("@eMail_Freigabe_Text", d.eMail_Freigabe_Text)
|
|
cmd.Parameters.AddWithValue("@OptionID", d.OptionID)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Optionen können nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Speichern Optionen")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
Public Sub LöschenOptionen(ByVal hID As Integer)
|
|
Dim sql = String.Format("DELETE FROM Optionen WHERE TVID = {0}", hID)
|
|
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Optionen-Eintrag kann nicht gelöscht werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Löschen")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
|
|
End Class
|
|
|
|
Public Class cStandort
|
|
Property StandortID As Integer
|
|
Property Standort As String
|
|
Property Standort_Text As String
|
|
Property Info As String
|
|
Property eMail_Ankunft_Betreff As String
|
|
Property eMail_Ankunft_Text As String
|
|
Property eMail_Freigabe_Betreff As String
|
|
Property eMail_Freigabe_Text As String
|
|
End Class
|
|
|
|
Public Class cStandorteDAL
|
|
|
|
Public Function LesenStandort(hID As Integer, hStandort As String, hSQL As String) As cStandort
|
|
'falls ID mitgegeben, dann diese laden, ansonsten den anderen Wert suchen
|
|
Dim sql As String
|
|
If hID > 0 Then
|
|
sql = String.Format("SELECT * FROM Standorte WHERE StandortID = {0}", hID)
|
|
ElseIf hStandort <> "" Then
|
|
sql = String.Format("SELECT * FROM Standorte WHERE Standort = '" & hStandort.Trim & "' and FIRMA ='" & VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & "'")
|
|
Else
|
|
sql = hSQL
|
|
End If
|
|
|
|
Dim daten As cStandort = Nothing
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
If dr.HasRows Then
|
|
dr.Read()
|
|
daten = New cStandort()
|
|
daten.StandortID = VarToInt(dr.Item("StandortID"))
|
|
daten.Standort = VarToStr(dr.Item("Standort"))
|
|
daten.Standort_Text = VarToStr(dr.Item("Standort_Text"))
|
|
daten.Info = VarToStr(dr.Item("Info"))
|
|
daten.eMail_Ankunft_Betreff = VarToStr(dr.Item("eMail_Ankunft_Betreff"))
|
|
daten.eMail_Ankunft_Text = VarToStr(dr.Item("eMail_Ankunft_Text"))
|
|
daten.eMail_Freigabe_Betreff = VarToStr(dr.Item("eMail_Freigabe_Betreff"))
|
|
daten.eMail_Freigabe_Text = VarToStr(dr.Item("eMail_Freigabe_Text"))
|
|
End If
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
conn.Close()
|
|
Return daten
|
|
End Function
|
|
|
|
Public Function Anzeigen_Standorte(hSQL As String) As DataTable
|
|
While True 'Endlosschleife; wird verlassen durch Return oder Application.Exit()
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Try
|
|
Dim myTable = New DataTable()
|
|
'Dim sql As String
|
|
'sql = hSQL
|
|
|
|
Using cmd As New SqlCommand(hSQL, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
myTable.Load(dr)
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
Return myTable 'While Schleife wird hier verlassen
|
|
Catch ex As Exception
|
|
Dim antwort As MsgBoxResult = MsgBox(ex.Message, CType(MsgBoxStyle.RetryCancel + MsgBoxStyle.Exclamation, MsgBoxStyle),
|
|
"Problem in Function 'Anzeigen_Standorte'")
|
|
If antwort <> MsgBoxResult.Retry Then
|
|
'Programm wird beendet
|
|
MsgBox("Programm wird aufgrund eines kritischen Problems beendet.", vbInformation)
|
|
Environment.Exit(0)
|
|
End If
|
|
End Try
|
|
conn.Close()
|
|
End While
|
|
|
|
Return Nothing
|
|
End Function
|
|
|
|
Public Function Anzeigen_cboStandorte() As DataTable
|
|
While True 'Endlosschleife; wird verlassen durch Return oder Application.Exit()
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Try
|
|
Dim myTable = New DataTable()
|
|
Dim sql As String
|
|
|
|
sql = "SELECT StandortID, Standort FROM Standorte ORDER BY Standort"
|
|
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
myTable.Load(dr)
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
Return myTable 'While Schleife wird hier verlassen
|
|
Catch ex As Exception
|
|
Dim antwort As MsgBoxResult = MsgBox(ex.Message, CType(MsgBoxStyle.RetryCancel + MsgBoxStyle.Exclamation, MsgBoxStyle),
|
|
"Problem in Function 'Anzeigen_cboStandort'")
|
|
If antwort <> MsgBoxResult.Retry Then
|
|
'Programm wird beendet
|
|
MsgBox("Programm wird aufgrund eines kritischen Problems beendet.", vbInformation)
|
|
Environment.Exit(0)
|
|
End If
|
|
End Try
|
|
conn.Close()
|
|
End While
|
|
|
|
Return Nothing
|
|
End Function
|
|
|
|
Public Sub SpeichernStandort(ByVal d As cStandort)
|
|
Dim hAuswahl As String
|
|
If d.StandortID = 0 Then
|
|
'Neuanlage
|
|
hAuswahl = "INSERT INTO Standorte " &
|
|
"(Standort, Standort_Text, Info, eMail_Ankunft_Betreff, eMail_Ankunft_Text, eMail_Freigabe_Betreff, eMail_Freigabe_Text) VALUES (" &
|
|
"@Standort, @Standort_Text, @Info, @eMail_Ankunft_Betreff, @eMail_Ankunft_Text, @eMail_Freigabe_Betreff, @eMail_Freigabe_Text)"
|
|
Else
|
|
'Änderung
|
|
hAuswahl = String.Format(
|
|
"UPDATE Standorte SET Standort = @Standort, Standort_Text=@Standort_Text, Info=@Info, eMail_Ankunft_Betreff=@eMail_Ankunft_Betreff, eMail_Ankunft_Text=@eMail_Ankunft_Text, eMail_Freigabe_Betreff=@eMail_Freigabe_Betreff, eMail_Freigabe_Text=@eMail_Freigabe_Text " &
|
|
"WHERE StandortID = @StandortID")
|
|
End If
|
|
Dim sql = hAuswahl
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@Standort", d.Standort)
|
|
cmd.Parameters.AddWithValue("@Standort_Text", d.Standort_Text)
|
|
cmd.Parameters.AddWithValue("@Info", d.Info)
|
|
cmd.Parameters.AddWithValue("@eMail_Ankunft_Betreff", d.eMail_Ankunft_Betreff)
|
|
cmd.Parameters.AddWithValue("@eMail_Ankunft_Text", d.eMail_Ankunft_Text)
|
|
cmd.Parameters.AddWithValue("@eMail_Freigabe_Betreff", d.eMail_Freigabe_Betreff)
|
|
cmd.Parameters.AddWithValue("@eMail_Freigabe_Text", d.eMail_Freigabe_Text)
|
|
cmd.Parameters.AddWithValue("@StandortID", d.StandortID)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Speichern Standort")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
Public Sub LöschenStandort(ByVal hID As Integer)
|
|
Dim sql = String.Format("DELETE FROM Standorte WHERE StandortID = {0}", hID)
|
|
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Standort kann nicht gelöscht werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Löschen")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
End Class
|
|
|
|
|
|
Public Class Statistik
|
|
Public Function getKunden(hSQL As String) As DataTable
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Try
|
|
Dim myTable = New DataTable()
|
|
'Dim sql As String
|
|
'sql = hSQL
|
|
Using cmd As New SqlCommand(hSQL, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
myTable.Load(dr)
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
Return myTable 'While Schleife wird hier verlassen
|
|
Catch ex As Exception
|
|
Dim antwort As MsgBoxResult = MsgBox(ex.Message, CType(MsgBoxStyle.RetryCancel + MsgBoxStyle.Exclamation, MsgBoxStyle),
|
|
"Problem in Function 'getKunden'")
|
|
If antwort <> MsgBoxResult.Retry Then
|
|
'Programm wird beendet
|
|
MsgBox("Programm wird aufgrund eines kritischen Problems beendet.", vbInformation)
|
|
Environment.Exit(0)
|
|
End If
|
|
End Try
|
|
conn.Close()
|
|
' End While
|
|
Return Nothing
|
|
End Function
|
|
|
|
|
|
Public Function getAVG(ByVal datumVon As DateTime, ByVal datumBis As DateTime, ByVal DauerVon As String, ByVal DauerBis As String) As Long
|
|
If DauerVon = "" Then DauerBis = "0"
|
|
If DauerBis = "" Then DauerBis = "999999"
|
|
Dim sql As String = "SELECT avg(Dauer) " &
|
|
" FROM Aviso WHERE ( Datum BETWEEN '" & datumVon.ToShortDateString & "' AND '" & datumBis.ToShortDateString & "') AND ( Dauer BETWEEN '" & DauerVon & "' AND '" & DauerBis & "') AND Firma='" & VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & "' "
|
|
' Dim sql As String = "SELECT * " &
|
|
' " FROM Aviso"
|
|
' MsgBox(sql)
|
|
' Dim daten As New List(Of cEntry)
|
|
Dim dr As SqlDataReader
|
|
'Using conn As SqlConnection = cDatenbank.GetNewOpenConnection()
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
|
|
' MsgBox(conn.ConnectionString)
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
dr = cmd.ExecuteReader()
|
|
Try
|
|
Dim cnt As Integer = 0
|
|
If dr.Read Then
|
|
If Not dr.GetValue(0) Is DBNull.Value Then
|
|
Return CLng(dr.GetValue(0))
|
|
End If
|
|
End If
|
|
conn.Close()
|
|
Return 0
|
|
Catch ex As Exception
|
|
MsgBox(System.Reflection.MethodInfo.GetCurrentMethod.Name & ": Fehler mit der Datenbankverbindung:" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Datenbankfehler")
|
|
Finally
|
|
dr.Close()
|
|
End Try
|
|
'end Using
|
|
End Using
|
|
Return -1
|
|
End Function
|
|
|
|
Public Function getAVGMa(ByVal datumVon As DateTime, ByVal datumBis As DateTime, ByVal DauerVon As String, ByVal DauerBis As String) As List(Of listMaAVG)
|
|
If DauerVon = "" Then DauerBis = "0"
|
|
If DauerBis = "" Then DauerBis = "999999"
|
|
Dim sql As String = "SELECT LetzterMitarbeiterId,avg(Dauer) as avg,mit_nname + ' ' + mit_vname as name, count([LetzterMitarbeiterId]) as count " &
|
|
" FROM Aviso INNER JOIN ADMIN.dbo.tblMitarbeiter ON mit_id=LetzterMitarbeiterId WHERE ( Datum BETWEEN '" & datumVon.ToShortDateString & "' AND '" & datumBis.ToShortDateString & "') AND ( Dauer BETWEEN '" & DauerVon & "' AND '" & DauerBis & "') AND Firma='" & VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & "' GROUP BY LetzterMitarbeiterId,mit_nname,mit_vname"
|
|
Dim dr As SqlDataReader
|
|
|
|
Dim ll As New List(Of listMaAVG)
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
dr = cmd.ExecuteReader()
|
|
Try
|
|
Dim cnt As Integer = 0
|
|
If dr.HasRows Then
|
|
While dr.Read
|
|
If Not dr.Item("LetzterMitarbeiterId") Is DBNull.Value Then
|
|
Dim l As New listMaAVG
|
|
l.mit_id = CInt(dr.Item("LetzterMitarbeiterId"))
|
|
l.mit_name = CStr(dr.Item("name"))
|
|
l.mit_avg = CInt(dr.Item("avg"))
|
|
l.mit_count = CInt(dr.Item("count"))
|
|
ll.Add(l)
|
|
End If
|
|
End While
|
|
Return ll
|
|
End If
|
|
conn.Close()
|
|
Catch ex As Exception
|
|
MsgBox(System.Reflection.MethodInfo.GetCurrentMethod.Name & ": Fehler mit der Datenbankverbindung:" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Datenbankfehler")
|
|
Finally
|
|
dr.Close()
|
|
End Try
|
|
'end Using
|
|
End Using
|
|
Return Nothing
|
|
End Function
|
|
|
|
End Class
|
|
|
|
Public Class StatDB
|
|
Public Function getAnzahlLkwAnkunft(art As String, ByVal datTmp As Date, i As Integer, firma As String) As Integer
|
|
Dim lkws As Integer = 0
|
|
Try
|
|
Dim cn As New SqlConnection()
|
|
' cn.ConnectionString = "Data Source=BUCHHALTUNG\SQLEXPRESS;Initial Catalog=AVISO;Integrated Security=false;User ID=sa;Password=BmWr501956;"
|
|
' cn.Open()
|
|
cn = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand("SELECT COUNT(*) FROM [Aviso] where " & art & " between @DatVon and @DatBis and Grenzstelle='SUB' AND Firma='" & If(firma <> "", firma, VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA) & "' ", cn)
|
|
'DATEADD(dd, 0, DATEDIFF(dd, 0, [Ankunft]))=DATEADD(dd, 0, DATEDIFF(dd, 0, [Freigabe])) AND
|
|
Dim VonStr = ""
|
|
Dim BisStr = ""
|
|
If i = 6 Then
|
|
VonStr = datTmp.ToString("yyyy-MM-dd ") & "00:00:00"
|
|
Else
|
|
VonStr = datTmp.ToString("yyyy-MM-dd ") & i & ":00:00"
|
|
End If
|
|
|
|
If i = 22 Then
|
|
BisStr = datTmp.ToString("yyyy-MM-dd ") & "23:59:59"
|
|
Else
|
|
BisStr = datTmp.ToString("yyyy-MM-dd ") & i & ":59:59"
|
|
End If
|
|
|
|
cmd.Parameters.AddWithValue("@DatVon", VonStr)
|
|
cmd.Parameters.AddWithValue("@DatBis", BisStr)
|
|
' MsgBox(VonStr)
|
|
Dim dr = cmd.ExecuteReader()
|
|
|
|
If dr.HasRows Then
|
|
dr.Read()
|
|
lkws = CInt(dr.Item(0))
|
|
End If
|
|
dr.Close()
|
|
cn.Close()
|
|
End Using
|
|
Return lkws
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message)
|
|
End Try
|
|
Return 0
|
|
End Function
|
|
|
|
|
|
Public Function getAnzahlLkwDauer(ByVal datumVon As DateTime, ByVal datumBis As DateTime, ByVal DauerVon As String, ByVal DauerBis As String, ByVal DauerEinschrVon As String, ByVal DauerEinschrBis As String, Optional where As String = "") As Integer
|
|
Dim sql As String = "SELECT count(*) as count " &
|
|
" FROM Aviso WHERE ( Datum BETWEEN '" & datumVon.ToShortDateString & "' AND '" & datumBis.ToShortDateString & "') AND ( Dauer BETWEEN '" & DauerVon & "' AND '" & DauerBis & "') AND ( Dauer BETWEEN '" & DauerEinschrVon & "' AND '" & DauerEinschrBis & "') AND Firma='" & VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & "' " & where
|
|
Dim dr As SqlDataReader
|
|
'MsgBox(sql)
|
|
Dim anz As Integer = 0
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
dr = cmd.ExecuteReader()
|
|
Try
|
|
Dim cnt As Integer = 0
|
|
If dr.HasRows Then
|
|
dr.Read()
|
|
anz = CInt(dr.Item(0))
|
|
End If
|
|
conn.Close()
|
|
Return anz
|
|
Catch ex As Exception
|
|
MsgBox(System.Reflection.MethodInfo.GetCurrentMethod.Name & ": Fehler mit der Datenbankverbindung:" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Datenbankfehler")
|
|
Finally
|
|
dr.Close()
|
|
End Try
|
|
'end Using
|
|
End Using
|
|
Return 0
|
|
End Function
|
|
|
|
Public Function getAnzahlAvisoProbleme(ByVal kdNr As String, ByVal datumVon As DateTime, ByVal datumBis As DateTime, ByVal DauerVon As String, ByVal DauerBis As String, Optional where As String = "") As List(Of listStatAvisoProleme)
|
|
'ZWEICHFACE SELECT, um Doppelte Einträge mit selber AvisoId zu umgehen
|
|
Dim sql As String = " SELECT VermerkeCode,[Bezeichnung], count(*) as anzahlVermerk " &
|
|
" FROM " &
|
|
" (SELECT aviso.avisoid, VermerkeCode,[Bezeichnung] " &
|
|
" FROM [AVISO].[dbo].[Vermerke] " &
|
|
" INNER JOIN [Aviso] ON [Vermerke].[AvisoID]=[AVISO].[AvisoID] " &
|
|
" INNER JOIN [AVISO].[dbo].[VermerkeCodes] ON VermerkeCode=VermerkCodeId " &
|
|
" where AVISO.Firma='" & VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & "' AND /*([Auftraggeber_KdNr] = @kdNr) " &
|
|
" AND */ ( Aviso.Datum BETWEEN @datumVon AND @datumBis) AND ( Aviso.Dauer BETWEEN @DauerVon AND @DauerBis ) " & where &
|
|
" group by aviso.avisoid,VermerkeCode,[Bezeichnung] " &
|
|
" ) AS tbl " &
|
|
" WHERE VermerkeCode IN (1,3,5,7,9,11,13,15,16,25) " &
|
|
" group by VermerkeCode,[Bezeichnung] " &
|
|
" ORDER BY anzahlVermerk DESC "
|
|
|
|
Dim dr As SqlDataReader
|
|
Dim data As New List(Of listStatAvisoProleme)
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@kdNr", kdNr)
|
|
cmd.Parameters.AddWithValue("@datumVon", datumVon.ToShortDateString)
|
|
cmd.Parameters.AddWithValue("@datumBis", datumBis.ToShortDateString)
|
|
cmd.Parameters.AddWithValue("@DauerVon", DauerVon)
|
|
cmd.Parameters.AddWithValue("@DauerBis", DauerBis)
|
|
'cmd.Parameters.AddWithValue("@DauerEinschrVon", DauerEinschrVon)
|
|
'cmd.Parameters.AddWithValue("@DauerEinschrBis", DauerEinschrBis)
|
|
dr = cmd.ExecuteReader()
|
|
Try
|
|
Dim cnt As Integer = 0
|
|
While dr.Read()
|
|
Dim d As New listStatAvisoProleme
|
|
d.VermerkeCode = CInt(dr.Item("VermerkeCode"))
|
|
d.Bezeichnung = CStr(dr.Item("Bezeichnung"))
|
|
d.AnzahlVermerke = CInt(dr.Item("anzahlVermerk"))
|
|
data.Add(d)
|
|
End While
|
|
conn.Close()
|
|
Catch ex As Exception
|
|
MsgBox(System.Reflection.MethodInfo.GetCurrentMethod.Name & ": Fehler mit der Datenbankverbindung:" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Datenbankfehler")
|
|
Finally
|
|
dr.Close()
|
|
End Try
|
|
'end Using
|
|
End Using
|
|
Return data
|
|
End Function
|
|
|
|
|
|
|
|
|
|
|
|
End Class
|
|
Public Class adminfunc
|
|
Public Function getDatatable(connstr As String, hSQL As String) As DataTable
|
|
Dim conn As SqlConnection = Nothing
|
|
Try
|
|
conn = New SqlConnection(connstr)
|
|
conn.Open()
|
|
Dim myTable = New DataTable()
|
|
'Dim sql As String
|
|
'sql = hSQL
|
|
Using cmd As New SqlCommand(hSQL, conn)
|
|
Using dr As SqlDataReader = cmd.ExecuteReader()
|
|
myTable.Load(dr)
|
|
dr.Close()
|
|
End Using
|
|
End Using
|
|
Return myTable 'While Schleife wird hier verlassen
|
|
Catch ex As Exception
|
|
Dim antwort As MsgBoxResult = MsgBox(ex.Message, CType(MsgBoxStyle.RetryCancel + MsgBoxStyle.Exclamation, MsgBoxStyle),
|
|
"Problem in Function 'getKunden'")
|
|
If antwort <> MsgBoxResult.Retry Then
|
|
'Programm wird beendet
|
|
MsgBox("Programm wird aufgrund eines kritischen Problems beendet.", vbInformation)
|
|
Environment.Exit(0)
|
|
End If
|
|
End Try
|
|
conn.Close()
|
|
' End While
|
|
Return Nothing
|
|
End Function
|
|
|
|
|
|
|
|
Public Sub setAuftraggber(ByVal Auftraggeber As String, ByVal Auftraggeber_KdNr As String)
|
|
Dim hAuswahl As String
|
|
|
|
hAuswahl = String.Format(
|
|
"UPDATE Aviso SET [Auftraggeber_KdNr] = @Auftraggeber_KdNr " &
|
|
"WHERE [Auftraggeber] = @Auftraggeber")
|
|
|
|
Dim sql = hAuswahl
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@Auftraggeber", Auftraggeber)
|
|
cmd.Parameters.AddWithValue("@Auftraggeber_KdNr", Auftraggeber_KdNr)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Speichern Firma")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
Public Sub setFirmenKdNr(ByVal Firma As String, ByVal KundenNr As String)
|
|
Dim sql = "UPDATE Firmen SET KundenNr = @KundenNr " &
|
|
"WHERE [Firma] like @Firma "
|
|
|
|
' MsgBox("UPDATE Firmen SET KundenNr = '" & KundenNr & "' " &
|
|
' "WHERE [Firma] like '" & Firma & "' ")
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@Firma", Firma)
|
|
cmd.Parameters.AddWithValue("@KundenNr", KundenNr)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Speichern Firma")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
|
|
Public Sub setFraechter(ByVal Frächter As String, ByVal Frächter_KdNr As String)
|
|
Dim hAuswahl As String
|
|
|
|
hAuswahl = String.Format(
|
|
"UPDATE Aviso SET [Frächter_KdNr] = @Frächter_KdNr " &
|
|
"WHERE [Frächter] = @Frächter")
|
|
|
|
Dim sql = hAuswahl
|
|
Dim conn As SqlConnection = cDatenbankAVISO.GetNewOpenConnection()
|
|
Using cmd As New SqlCommand(sql, conn)
|
|
cmd.Parameters.AddWithValue("@Frächter", Frächter)
|
|
cmd.Parameters.AddWithValue("@Frächter_KdNr", Frächter_KdNr)
|
|
Try
|
|
cmd.ExecuteNonQuery()
|
|
Catch ex As SqlException
|
|
MsgBox("Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Speichern Firma")
|
|
End Try
|
|
End Using
|
|
conn.Close()
|
|
End Sub
|
|
|
|
|
|
End Class |